2011-05-12 59 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/)。這需要一個紮根電話,以便您可以將系統分區安裝爲可寫。當然,這與您的清單設置一起使用。我不確定這是否足夠,因爲我自己沒有這樣做,但是這是一件可以嘗試的事情。