原java类文件放到framework下面,通过源码编译生成系统jar包:
项目中,客户要求将jar添加到framework.jar里,以便所有的apk都可以调用这个jar。这个jar包里面调用了AIDL里的方法,源码里有项目是AIDL的服务端,冰拳引用了framework.jar,则会因为包名类名相同导致出现混淆错误。下面是我自己总结各方资料来解决问题,仅供参考:
1.简单的弄一个架包加入到framework.jar里面去
在frameworks\base下新建xxx目录,下面的目录结构如下,不需要加Android.mk文件,但必须要有一个java的目录:
└─xxx
└─java
└─com
└─android
└─frameworkunit
└─ FrameworkTest.java
然后在build/core/pathmap.mk文件中添加你自己创建的目录
FRAMEWORKS_BASE_SUBDIRS := \
$(addsuffix /java, \
core \
graphics \
location \