snappy-android is a android port of the snappy http://code.google.com/p/snappy/, a fast C++ compresser/decompresser developed by Google.
Using JCenter:
repositories {
jcenter()
}
dependencies {
compile 'cn.xiaoman.android.library:snappy-android:1.1.7'
}
First, import cn.xiaoman.library.android.snappy.Snappy
in your Java code:
import cn.xiaoman.library.android.snappy.Snappy;
Then use Snappy.compress(byte[])
and Snappy.uncompress(byte[])
:
String input = "Hello snappy-java! Snappy-java is a JNI-based wrapper of "
+ "Snappy, a fast compresser/decompresser.";
byte[] compressed = Snappy.compress(input.getBytes("UTF-8"));
byte[] uncompressed = Snappy.uncompress(compressed);
String result = new String(uncompressed, "UTF-8");
System.out.println(result);
In addition, high-level methods (Snappy.compress(String)
, Snappy.compress(float[] ..)
etc. ) and low-level ones (e.g. Snappy.rawCompress(.. )
, Snappy.rawUncompress(..)
, etc.), which minimize memory copies, can be used.
contain "armeabi-v7a","arm64-v8a","x86","x86_64" lib so
don't support "armeabi","mips","mips64" platform because it is not supported in newest NDK
Snappy-Android is developed by Jiechic. Twitter @jiechic