I'd like to display webp image on older Android platforms. I tries these steps:
- Download latest Android SDK and NDK package.
- Add NDK path to system environment
path
and set it in Eclipse preferences. - Create new Android project in Eclipse
- Right click on project folder,
Android Tools
->Add native support
, confirm default name. - Download
libwebp-0.3.1.tar.gz
, extract to project/jni
- Add
static {}
andwebpToBitmap
method to mainActivity
, codes come from WebP for Android - Add
/jni/swig/libwebp.jar
(comes with libwebp source) to java build path andimport com.google.webp.libwebp;
.
And I got these errors when try to use webpToBitmap
: (delete unnecessary time/package name)
Could not find method com.google.webp.libwebp.WebPDecodeARGB, referenced from method ....MainActivity.webpToBitmap
VFY: unable to resolve static method 4601: Lcom/google/webp/libwebp;.WebPDecodeARGB
E/AndroidRuntime(12614): java.lang.UnsatisfiedLinkError: Couldn't load webp from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/....apk"],nativeLibraryDirectories=[/data/app-lib/..., /vendor/lib, /system/lib]]]: findLibrary returned null
I also tried add swig/libwebp_java_wrap.c \
(comes with libwebp source) to Android.mk
LOCAL_SRC_FILES
and include $(BUILD_STATIC_LIBRARY)
-> include $(BUILD_SHARED_LIBRARY)
, got same error.
Or, is there any prebuilt files I can easily add to my project?