帮助构建修补的 Android 框架

发布于 2024-11-18 17:11:05 字数 814 浏览 2 评论 0原文

我是 Android 平台开发的新手。我刚刚在应用补丁后成功构建了 Cyanogenmod 7 源,这为系统添加了额外的 jars(适合 /系统/框架目录)。

刷新设备并检查新的自定义 jar 是否存在,然后反编译(提取classes.dex并运行 dex2jar )只是为了验证所需的类是否存在,我发现我的测试程序由于 ClassNotFound 异常而崩溃。

由于编译的自定义 java 源看起来没问题,我是否在构建过程中错过了一些东西,以便我的应用程序可以使用这些新的框架类?

更新

我意识到框架 jar 包含在名为 BOOTCLASSPATH 的环境变量中,该变量在 init.rc 中定义。我对其进行了修改,以包含来自 SEEK 项目的新 jar(smartcardapi.jarorg.simalliance.openmobileapi.jar)。我重建了图像并刷新了我的手机。

设备现在无法启动。我已阅读这里有关针对 BOOTCLASSPATH 运行的类优化的内容类。建议不要弄乱 BOOTCLASSPATH。

但是我该怎么做才能让我的应用程序可以使用新 jar 中定义的扩展 API 类呢?

I am new to Android platform development. I have just succeded building Cyanogenmod 7 sources after applying a patch, which adds extra jars to the system (fit into /system/framework directory).

After flashing the device and checking that the new custom jars are there, and decompiling (extracting classes.dex and running dex2jar) just to verify that the needed classes are there, I see my test program crashing due to ClassNotFound exceptions.

Since the compiled custom java sources seem ok, have I missed something in the building process so my applications can use these new framework classes?

UPDATE:

I realized that framework jars are included inside an environment variable called BOOTCLASSPATH, which is defined in init.rc. I modified it to include the new jars from SEEK project (smartcardapi.jar and org.simalliance.openmobileapi.jar). I rebuilt the image and flashed my phone.

The device now does not start. I have read something here about class optimizations that are run against BOOTCLASSPATH classes. The advice is not to mess with BOOTCLASSPATH.

But what can I do so my applications can use the extended API classes defined in the new jars?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文