AOSP Android 系统源码编译出的framework.jar和android.jar之间的区别

简介

AOSP(Android Open Source Project)编译出的 android.jar 和 framework.jar 都是 Android 平台开发中的重要组件,但它们有不同的作用和用途:

  1. android.jar:

    • 用途:android.jar 包含了 Android API 的定义,它是 Android 应用程序开发的核心库。开发者在编写 Android 应用程序时,使用 android.jar 中的类和方法来与 Android 系统进行交互,访问设备功能和系统服务。

    • 内容:android.jar 包含了 Android Framework 中的 API 定义,但不包含实际的实现代码。这意味着它只包含了类和方法的签名信息,而没有具体的实现。这样可以确保应用程序开发者使用的 API 是公开的、稳定的,并且与 Android 版本无关。

    • 使用:android.jar 通常被包含在 Android 应用程序项目的类路径中,以便开发者可以在编译和开发过程中引用 Android API。

    • 输出路径: android.jar 文件通常位于 Android 源代码树的 out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar 目录中。注意这些路径可能会因不同的 Android 版本和编译配置而有所不同。

  2. framework.jar:

    • 用途:framework.jar 包含了 Android Framework 层的实际 Java 代码。这些代码实现了 Android 操作系统的核心功能,包括各种系统服务、管理应用生命周期、处理用户界面等。这是 Android 系统自身的一部分。

    • 内容:framework.jar 包含了 Android Framework 层的具体实现,包括各种类、方法和功能的代码。

    • 使用:framework.jar 不是用于 Android 应用程序开发的库,而是用于 Android 系统的开发和定制。Android 系统开发人员可以在 Android 源代码的基础上进行自定义,修改和扩展 framework.jar 中的代码来创建定制的 Android ROM。

    • 输出路径:framework.jar 文件位于 Android 源代码树的 out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes.jar 目录中。注意这些路径可能会因不同的 Android 版本和编译配置而有所不同。

总结

  • 总结来说,android.jar 用于 Android 应用程序开发,提供了对 Android API 的访问,而 framework.jar 是 Android 系统的一部分,包含了 Android Framework 层的实际实现代码。应用程序开发者通常只需关注 android.jar,而 Android 系统开发人员可能需要涉及到 framework.jar 来进行系统级的定制和修改。
相关推荐
古法安卓1 小时前
Android-GPU压测工具
android·java·android studio
xcLeigh3 小时前
KingbaseES数据库教程:初识数据库,从安装到跑通第一条SQL
android·数据库·sql·安装·数据库教程·kes
TimeFine6 小时前
AI 编码工作流的设计(二)
android·ai编程
2401_881828326 小时前
MySQL操作命令
android·mysql·adb
用户60709759149068 小时前
AOSP 14 OTA 升级指导(三):三条升级链路——Java API、自研 HAL 与 TR069
android
前端小D9 小时前
React Native Android 项目搭建
android·react native·react.js
恋猫de小郭9 小时前
感人,Flutter 居然有了一个超实用提案,期待落地
android·前端·flutter
CS_Zero10 小时前
安卓开发:Linux的android工具命令
android·linux·运维
fellow9911 小时前
DSH Desktop - Android Edition
android·agent·deepseek·harness·dsh
Carson带你学Android11 小时前
Android Studio Rabbit 2 发布:除了Gemini,40+ AI Agent 正式入驻!
android·ai编程