system/framework jar的用途

本文介绍了Android系统中重要的Java库及其用途,包括am.jar、android.policy.jar等22种核心及常用jar包,详细解释了各库的功能、源码位置及使用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、am.jar:终端下执行am命令时所需的java库。源码目录:framework/base/cmds/am
2、android.policy.jar:锁屏界面需要用到的jar包,该包引用了android.test.runner.jar,源码目录:framework/base/policy
3、android.test.runner.jar:测试应用所需的jar包,该包引用了core.jar,core-junit.ajr以及framework.jar,源码目录:framework/base/test-runner
4、bmgr.jar:adb shell命令下对Android Device所有package备份和恢复的操作时所需的java库。官方文档:http://developer.android.com/guide/developing/tools/bmgr.html。不过这个android服务默认是Disabled,而且要backup的应用必须实现BackupAgent,在AndroidManifest.xml的application标签中加入android:backupAgent属性。源码目录:framework/base/cmds/bmgr
5、bouncycastle.jar: java三方的密匙库,网上资料说用来apk签名、https链接之类,官网 :http://www.bouncycastle.org/java.html
6、com.android.future.usb.accessory.jar:用于管理USB的上层java库,在系统编译时hardware层会调用到。源码目录:frameworks/base/libs/usb
7、com.android.location.provider.jar:

com.android.nfc_extras.jar:NFC外部库。android/nfc/NfcAdapter.java会调用到包中的NfcAdapterExtras.java。源码目录:frameworks/base/nfc-extras

8、core-junit.jar :junit核心库,在运行*Test.apk时被调用。

9、core-junitrunner.jar:未知,公司话机上有。
10、core-tests*.jar:framework下的一系列测试jar包,不做测试时可删除。
11、core.jar:核心库,启动桌面时首先加载这个。源码目录: 
12、ext.jar:android外部三方扩展包,源码主要是external/nist-sip(java下的sip三方库)、external/apache-http(apache的java三方库)、external/tagsoup(符合SAX标准的HTML解析器)。其实这个jar包可以添加外部扩展jar包,只需在framework/base/Android.mk中的ext-dir添加src目录即可。
13、framework-res.apk:android系统资源库。
14、framework.jar:android的sdk中核心代码。
15、ime.jar:ime命令所需jar包,用于查看当前话机输入法列表、设置输入法。源码目录:framework/base/cmds/ime
16、input.jar:input命令所需的jar包,用于模拟按键输入。源码目录:framework/baes/cmds/input
17、javax.obex.jar:java蓝牙API,用于对象交换协议。源码目录:framework/base/obex
18、monkey.jar:执行monkey命令所需jar包。源码目录:framework/base/cmds/monkey
19、pm.jar:执行pm命令所需的jar包,pm详情见adb shell pm,源码目录:framework/base/cmds/pm
20、services.jar:话机框架层服务端的编译后jar包,配合libandroid_servers.so在话机启动时通过SystemServer以循环闭合管理的方式将各个service添加到ServiceManager中。源码目录:framework/base/service
21、sqlite-jdbc.jar: sqlite的Java DataBase Connextivity jar包。
22、svc.jar:svc命令所需jar包,可硬用来管理wifi,power和data。源码目录:framework/base/cmds/svc
要将`wifi-service.jar`推送到`/system/framework/wifi-service.jar`位置,你需要通过ADB(Android Debug Bridge)工具执行命令。因为通常情况下,framework目录下的文件结构有特定的要求,所以直接推送可能不会生效。这里假设你的目标设备已经运行的是Android 9.0及以上版本。 首先,你需要确认你的设备已连接到电脑并且adb工具已经安装并配置好。然后,按照以下步骤操作: 1. **确保权限**: - 使用`adb shell pm grant <package_name> android.permission.WRITE_EXTERNAL_STORAGE`,替换 `<package_name>`为你应用的包名,以获得写入系统的权限。 2. **找到源文件**: - 确定你的`wifi-service.jar`文件位于你的开发环境的哪个目录下,比如`out/target/product/xxx/app/src/main/jniLibs/<abi>/`,这里的`<abi>`可能是armeabi-v7a、arm64-v8a等架构之一。 3. **推送jar文件**: ```shell adb push <path_to_your_wifi_service_jar> /system/framework/ ``` 其中`<path_to_your_wifi_service_jar>`是你本地`wifi-service.jar`的实际路径。 4. **指定目标文件夹**: - 如果`wifi-service.jar`应该替代原有的framework内的文件,那么可以直接追加文件名: ```shell adb push <path_to_your_wifi_service_jar> /system/framework/wifi-service.jar ``` 5. **验证**: - 推送完成后,可以使用`adb shell ls /system/framework/`检查`wifi-service.jar`是否已经存在。 请注意,这一步骤可能会因设备安全设置、系统更新以及权限管理等因素而有所不同。如果遇到问题,可能需要查阅设备的官方文档或寻求开发者社区的帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值