2011-05-12 63 views
3

我正在为内部研究项目开发一个概念验证工具。签署Android系统应用程序(研究项目)

我们有特定的需求,只有通过运行我们的应用程序作为系统应用程序,如设置或电话应用程序才能满足。

我是正确的思维,只有这样运行下的系统用户的应用程序(UID = 1000)是通过设置清单如下:与平台证书

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.frogdesign.desktop" 
    android:sharedUserId="android.uid.system" > 

,并签署我的应用程序?

如果是这样,对于给定的电话,例如Galaxy S,这将要求我们使用三星的证书进行签名。不会发生,对。

因此,如果我们根据手机并在其上粘贴诸如cyanogenmod之类的东西,那么所需的证书是否是cyanogenmod的平台证书?

这是通常提供?

+0

如果你成功了,你能分享吗? – 2015-10-09 07:30:02

+0

没有成功。 – tomfanning 2015-10-12 12:30:52

回答

2

我相当有信心你不会使用制造商的密钥。在我的Galaxy S上,Gmail应用程序是一个系统应用程序,您可以从Android Market进行更新(即,如果它是由Google而不是由三星签名的话)。

如果手机是deodexed,您应该能够将应用程序移动到/system/app/(或在较新的操作系统版本上为/system/priv-app/)。这需要一个扎根电话,以便您可以将系统分区安装为可写。当然,这与您的清单设置一起使用。我不确定这是否足够,因为我自己没有这样做,但是这是一件可以尝试的事情。