Android系统应用信息

ale*_*230 14 android system sign

我想了解一些关于系统应用程序的一般信息.我正在与一家制造商合作,他愿意向我提供使我的应用成为系统应用所需的信息.但是,我不确切知道这些信息应该是什么以及如何使用我的应用程序进行更改以使其成为具有给定信息的系统应用程序.我相信我需要像我这样的东西

android:sharedUserId="android.uid.system"
Run Code Online (Sandbox Code Playgroud)

然后我需要用制造商的密钥签署我的应用程序?我不确定是否有人可以向我解释这个过程会取悦什么?

我的应用程序需要成为系统应用程序的原因是用户无法卸载它,但我的应用程序仍需要更新.是否可以在系统应用程序时更新我的​​应用程序?如果从谷歌播放正常,我会更新.

感谢您的帮助,我根本找不到关于这个主题的非常多的信息,并希望得到帮助.

Kum*_*bek 13

这里的链接会给你一些信息.

系统应用程序不是由操作系统的平台签名签名的应用程序.这是许多人认为的常见错误,我们将在稍后讨论.系统应用程序仅仅是位于Android设备的/ system/app文件夹下的应用程序.如果我们可以访问操作系统的ROM(system.img),则只能在该文件夹中安装应用程序.提取ROM后,应用程序将放在/ app文件夹下.加载自定义ROM的设备将添加新的系统应用程序.系统应用程序的好处是无法从设备中删除应用程序(用户无法卸载).这只是因为/ system/app是一个只读文件夹.

http://ricston.com/blog/explaining-behavior-android-application-system-apps-nonsystem-apps/

至于通过游戏商店更新你的应用程序,我假设你应该能够毫无问题地做到这一点,如果应用程序在游戏商店,并且你每次都使用相同的签名.它不一定是制造商的证书,但最好使用该证书来签署您的应用程序.

因此,您需要确保的唯一事情是,在构建ROM时,制造商将您的apk放入系统文件夹,它应该可以工作.


dig*_*edx 5

  1. 使用mkkey.sh http://www.kandroid.org/online-pdk/guide/release_keys.html脚本创建新证书,包括x509证书。您将不需要这些步骤,因为制造商会为您提供密钥。
  2. 在您应用程序的AndroidManifest.xml中:在元素下添加属性android:sharedUserId =“” android.uid.system”
  3. 使用eclipse导出Android应用程序的未签名版本。项目>> Android工具>>导出未签名的应用程序包
  4. 使用/out/host//framework/signapk.jar使用先前生成的/ build / target / product / security /中的platform.x509.pem和platform.pk8对应用程序进行签名

java –jar signapk.jar platform.x509.pem platform.pk8 your_app_unsigned.apk your_app_signed.apk

Kumar Bibek已经回答了您的其他一些问题。这些是我必须执行的步骤。这是在Android ICS中完成的。步骤可能已更改,但仍然值得尝试。