rk 修改微信認證系統簽名;以及和替換籤名後編譯報錯的

一:簽名類型

1、testkey:普通APK,默認情況下使用。

2、platform:該APK完成一些系統的核心功能。經過對系統中存在的文件夾的訪問測試,這種方式編譯出來的APK所在進程的UID爲system。

3、shared:該APK需要和home/contacts進程共享數據。

4、media:該APK是media/download系統中的一環。

二、生成簽名文件
進入$(android_src)/development/tools目錄;
在網上查找編譯簽名文件的命令是:
sh make_key mysignkey ‘/C=CN/ST=Beijing/L=Xicheng/O=Company/OU=Department/CN=YourName/emailAddress=YourE-mailAddress’
按照這個命令編譯出的文件放到系統 裏面編譯會報錯;沒有輸入密碼也會報這種錯誤Enter password for build/target/product/security/releasekey.pk8 (password will not be hidden): java.lang.NullPointerException

1.Enter password for build/target/product/security/releasekey.pk8 (password will not be hidden): java.lang.NullPointerException  
2.    at com.android.signapk.SignApk.decryptPrivateKey(SignApk.java:142)  
3.    at com.android.signapk.SignApk.readPrivateKey(SignApk.java:166)  
4.    at com.android.signapk.SignApk.main(SignApk.java:531)  
5.Enter password for build/target/product/security/releasekey.pk8 (password will not be hidden): make: *** [out/target/product/gotechcn/obj/APPS/CalendarProvider_intermediates/package.apk] 錯誤 1  
6.make: *** 正在等待未完成的任務....  
7.Enter password for build/target/product/security/releasekey.pk8 (password will not be hidden): java.lang.NullPointerException  
8.    at com.android.signapk.SignApk.decryptPrivateKey(SignApk.java:142)  
9.    at com.android.signapk.SignApk.readPrivateKey(SignApk.java:166)  
10.    at com.android.signapk.SignApk.main(SignApk.java:531)  
11.make: *** [out/target/product/gotechcn/obj/APPS/Calculator_intermediates/package.apk] 錯誤 1  
12.Warning: AndroidManifest.xml already defines minSdkVersion (in http://schemas.android.com/apk/res/android); using existing value in manifest.  
13.Warning: AndroidManifest.xml already defines targetSdkVersion (in http://schemas.android.com/apk/res/android); using existing value in manifest.  
14. 'out/target/common/obj/APPS/Calendar_intermediates/classes.dex' as 'classes.dex'...  
15.Enter password for build/target/product/security/releasekey.pk8 (password will not be hidden): java.lang.NullPointerException  
16.    at com.android.signapk.SignApk.decryptPrivateKey(SignApk.java:142)  
17.    at com.android.signapk.SignApk.readPrivateKey(SignApk.java:166)  
18.    at com.android.signapk.SignApk.main(SignApk.java:531)  
19.make: *** [out/target/product/gotechcn/obj/APPS/Calendar_intermediates/package.apk] 錯誤 1  
20.^Cmake: *** [out/target/product/gotechcn/obj/APPS/BasicDreams_intermediates/package.apk] 錯誤 130  

後面用 ./執行命令後,就ok了,是sh和./ 執行編譯文件的區別吧!
./make_key mysignkey ‘/C=CN/ST=Beijing/L=Xicheng/O=Company/OU=Department/CN=YourName/emailAddress=YourE-mailAddress’

編譯出的簽名文件放到 build/target/product/security/ 目錄下重新編譯固件。這樣編譯出的整個系統用的就是新的簽名。

還有一種簽名方式可以參考
https://blog.csdn.net/winceos/article/details/18089969

https://www.cnblogs.com/leaven/p/3860583.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章