在Android源码编译成功的基础上重新编译带自己API的android.jar需要进行以下几步操作:
1、添加自己源代码,在Android源码frameworks/base目录下新建一个文件夹保存代码,如tv,以包的形式命名添加的文件所在的路径,如/tv/java/android/tv,添加的java文件开头定义的包即是编译成功的class文件所在的包。
2、修改makefile文件
2.1 修改build/core/pathmap.mk文件
在FRAMEWORKS_ BASE_ SUBDIRS变量后添加tv\,代码如下(makefile文件中的语句以Tab键空格开头)
FRAMEWORKS_BASE_SUBDIRS := \ $(addsuffix /java, \ core \ graphics \ location \ media \ opengl \ sax \ telephony \ wifi \ vpn \ keystore \ tv \ )
2.2 修改frameworks/base/Android.mk 文件
在packages_to_ document变量后添加自己源代码的包名称,如android/tv,结果如下(makefile文件中的语句以Tab键空格开头)
packages_to_document := \
android \
javax/microedition/khronos android/tv 3 在ubuntu命令行终端使用如下命令进行编译:
make clean
make update-api
make PRODUCT-sdk-sdk
最后一行也可以用如下两个命令代替: make –j4 make sdk 4 编译结果
4.1 android.jar文件所在的目录为
/out/target/common/obj/PACKAGING/android_jar_intermediates/android.jar并在/out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_interme diates/src目录下重新以package形式组织所有生成到android.jar中的源代码。 4.2 SDK所在目录为
out/host/linux-x86/sdk/,生成的sdk文件目录和压缩包为: android-sdk_eng.xxx_linux-x86
android-sdk_eng.xxx_linux-x86.zip(xxx为自己android源码所在的文件名)
❷ android系统编译jar包给app使用
最近在android O编译系统jar包给应用使用遇到了点问题,网上也没有找到解决方案,这里记录下。
编译方法参考网上博客就可以, android源码编译jar包
最终生成了javalib.jar,改名为 tvManager.jar即可。注意:如果没有指定LACAL_JACK_ENABLED选项,则默认是enabled,将会生成classes.jack文件,不会产生classes.jar包!
正常按照上面方案就可以编译出jar包,导入到AS里面就可以使用,下面说下我遇到的问题
遇到classes.jar.toc被依赖, 但是怎么编译都没有编译出来,网上也没有找到对应的方法,编译错误如下:
https://www.cnblogs.com/wangqiang9/p/9679466.html
https://stackoverflow.com/questions/43471694/how-to-generate-classes-dex-toc-files
❸ android 怎么修改第三方jar包
一、下载jd-gui.exe反编译工具。
二、用jd-gui.exe打开你的第三方jar包,这边以新浪微博sdk(weibo_sdk.jar)为例说明,打开weibo_sdk.jar
三、修改WeiboDialog文件中的内容,如上图一样选中WeiboDialog,然后点击file--》save source--》保存到桌面产生WeiboDialog.java文件
四、用记事本或source Insight 打开进行修改,修改完后保存。
五、新建一个工程,并且新建一个与WeiboDialog文件所在package一致的package,然后把WeiboDialog.java文件拷贝到新建的package中
六、若 WeiboDialog.java 拷贝进去有错误,则先修复错误,然后clean一下工程(工具栏 project --》clean)
七、找到工程所在目录中的bin\classes\....,会生成你修改后的文件的.class文件,复制到你的第三方jar所在目录。
八、用WinRAR打开你的第三方jar,替换jar中相同的该文件,ok完成!
❹ android怎么使用jar包
Android项目常常需要引用自定义的或者外部的jar包,这里提供一些经验,供参考。
一. 一般做法:
1. 通常情况下,直接将jar包在Eclipse工程中的libs目录下,就可以了,Eclipse就会自动引用过来,代码中有红叉的地方也就会消失了。
2. 查看build path中order and export中的private Libaries和Dependencies是否勾选,正确的做法是勾选。
再clean整个工程,再运行可否。
3. 你的jar文件必须也是由Android工程创建的,否则,会发生“"java.lang.NoClassDefFoundError“等错误,下面是一个错误:
12-09 00:43:05.172: E/dalvikvm(4456): Could not find class 'com.example.test4androidjar2.Jar4Android', referenced from method com.example.filemanagertest4android.MainActivity$1.onClick
4. 你的jar包必须是在Android下面编辑和编译,打包,不能在java中进行打包。FileMnager就是一例。
二.可能引起的异常:
1. Could not find class ......
2. VFY: unable to resolve new-instance 643 .....
3. Could not find class 'com.example.test4androidjar2.Jar4Android'
4. java.lang.NoClassDefFoundError...
三. 解决方法:
参考上面"一.一般做法"中提到的来做。
❺ 如何将AndroidStudio项目打包成jar包并使用
成功后:
在需要使用的工程中,添加jar包到libs目录中,右击 Add as Library 即可
可以看到这边可以正常使用之前创建的加法运算了
在创建jar的同时会生成一个 arr包 ,同样也可以使用