給Android程序簽署platform權限的名

    作Home程序的時候,因爲須要提供時間日期的設置功能,因此須要修改系統時間。修改時間的代碼很簡單,就那麼一句,可是要讓它生效可就不那麼容易了。
    修改系統時間的條件是,你的程序的user id必須跟system同樣,也就是說,須要system權限。
    怎樣達到這個條件呢?
    Android提供了sharedUserId來設置程序歸屬哪一個user id,咱們在程序的manifest文件裏面加上以下屬性
java

Xml代碼    收藏代碼
  1. android:sharedUserId="android.uid.system"  

    這樣還不行,由於這樣編譯出來的apk安裝不了。還須要簽名。 android

    簽名須要用到的文件是源碼中的build\target\product\security目錄下的platform.pk8和platform.x509.pem兩個文件。而後使用\prebuilts\sdk\tools\lib\signapk.jar來簽名。這三個文件打包放到附件了。 ui

    在cmd下面,運行 spa

Java代碼    收藏代碼
  1. java -jar signapk.rar platform.x509.pem platform.pk8 a.apk a_signed.apk  

     a.apk是待簽名的apk,a_signed.apk是簽名後的apk。這樣,若是你的代碼裏面有用到須要platform權限的功能,就能夠暢通無阻了。 orm


    固然,可能不一樣的系統platform.pk8和platform.x509.pem文件不同,可是我手裏的三個平板電腦都是用這兩個文件簽名的,運行正常。 blog

相關文章
相關標籤/搜索