如何在android中创建系统应用程序

pon*_*raj 17 settings android system-administration system application-settings

我想为UN-rooted应用程序创建一个系统应用程序(安装它时会要求用户允许将其作为系统应用程序).由于我对android不熟悉,请告诉我如何创建它.

提前致谢.

Rag*_*ood 23

真正的系统应用程序被烘焙到ROM映像中,并使用与ROM签名相同的密钥进行签名,从而为他们提供对系统的额外访问权限.

您无法在同一级别添加新的系统应用程序而无需更新设备的ROM映像,即使这样您也需要OEM密钥来签署您的应用程序,您必须要求他们将其包含在ROM中.

拥有root设备允许标准应用程序获得额外的访问权限,而无需系统应用程序.

  • 不完全正确.系统应用程序不需要*在固件/ ROM中 - 它们可以像普通(非系统)应用程序一样安装.正如您所指出的,关键点是App*必须*使用用于签署固件应用程序的相同密钥进行签名. (14认同)
  • @Basher51 (1) 是的。(2)。要实际使应用程序以系统用户身份运行,您需要在应用程序清单中指定 android:sharedUserId="android.uid.system" (当然,使用固件密钥对其进行签名)。确定应用程序是否实际作为系统运行的最简单方法是查看 logcat 消息中的 uid - 系统用户的 uid 始终为 1000。 (3认同)
  • 它们*可以*被卸载,但这不一定是问题。(如果它们正确烘焙到ROM中,则只能卸载更新) (2认同)