APK调用jar包中的类,有静态jar包(jar包中的类打包到APK中)、动态jar包(jar包中的类没有打包到APK中)、反射共三种方法。这次的例子是浏览器摇一摇回主页手势开发,第一篇blog,记录下来和大家共同学习。
直接push jar包到system/framework,供APK调用此jar包中的类(不是push原来的jar,是经过编译之后的jar)。
1 在androidmanifest文件中添加<uses-library android:name="com.yulong.android.gesture"></uses-library> 保存。
2 先将gestureImpl.jar勾选上,编译,在D:\workspace\CP_BrowserUI_4.4\bin\dexedLibs(对应你自己工程的目录找)目录下生成 了GestureImpl-17fd8056f3c6679d5dd0530fedee92c4.jar(反编译工具查看,jar包里面的是.dex后缀文件),将这个jar包保存一份副本防止再次编译的时候丢失。
3 将gestureImpl.jar不勾选,编译生成没有包含gestureImpl.jar的APK(会比第二步生成的APK小100多K),将这个apk部署到手机上,验证是无法响应手势的。
4 push GestureImpl-17fd8056f3c6679d5dd0530fedee92c4.jar system/framework
pull出手机目录/system/etc/permissions/plantform.xml文件,在plantform.xml中增加一行代码,<library name="com.yulong.android.gesture" file="/system/framework/GestureImpl-17fd8056f3c6679d5dd0530fedee92c4.jar"/>
分别是手势类所在的包名和手势jar包在手机中的路径。然后push plantform.xml /system/etc/permissions 替换原来的文件。 重启一下手机,就可以检测到手势了。
http://blog.csdn.net/whizkid01/article/details/7287252
http://my.oschina.net/zhoulc/blog/112573