最近几天研究android下GIF相关知识,如GIF播放,GIF合成,GIF的解码,得到了一点收获,赶紧共享出来给需要的哥们。
本篇文章讲的是android下通过NDK开发,使用JNI讲多张图片合成GIF图片。
首先看一下最终效果:
这三个图片为和成前的图片。
废话不说,直入主题。
一、NDK环境的搭建与Eclipse配置NDK_R7开发环境
这里主要是大家查下网上的资料即可,我参考的是:
二、下载合成GIF的C++相关源码文件
三、使用gifflen
1、在你的项目中根目录建立jni文件夹
2、将下载好解压缩后的文件放入jni文件夹下
3、修正对应的方法名。
NDK里面书写方法的名称需同你native 类的包名相同,举个例子我的native方法类的完整路径是:com.johdan.gif.merge.util.GifUtil.java那么我需要将下载回来的源码里面的jni call的方法名称改为以Java_com_johdan_gif_merge_util_GifUtil开头即可。
4、编译你的JNI,用cygwin进入该项目的jni目录下,或者使用配置eclipse的NDK builder 也可以。
我这里用的是eclipse编译JNI。
四、编译通过后,大功告成,直接使用吧!
这里我准备了一个Demo,想尝试的同学可以看看下载安装看看演示效果。
核心代码:
最后,感谢leepood的文章http://blog.leepood.com/new-to-android/android-gif-maker
下篇文章将分享一下GIF解码的相关知识,敬请期待,欢迎大家拍砖指导。