這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 首先安裝sdk https://www.oracle.com/java/technologies/downloads/ 正常下一步即可~安裝完畢後,進入在sdk根目錄執行cmd C:\Program Files\Java\jdk-18.0 ...
這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助
首先安裝sdk
https://www.oracle.com/java/technologies/downloads/
正常下一步即可~
安裝完畢後,進入在sdk根目錄執行cmd
C:\Program Files\Java\jdk-18.0.1.1\bin
生成keystore
例:
keytool -genkey -alias tianan -keyalg RSA -validity 36000 -keystore d:\tianan.keystore
-
tianan:證書別名
-
36000:證書有效期(一般預設就好100年)
-
d:\tianan.keystore:證書存放地址
這裡,證書就生成成功了~
記住 證書別名!密碼!
然後,打包uniapp時選擇自定義證書
打包時填寫對應信息~
完成後~上傳至平臺
如果平臺需要空包簽名請繼續往下看:
1.準備簽名證書2.要簽名的空包
第一步:將空包複製到此文件目錄下
還是 C:\Program Files\Java\jdk-18.0.1.1\bin 目錄 :
弟二步:smd 運行該目錄
輸入以下命令:
D:\Test.keystore:證書地址 D:\qianming\meizu\MeizuEmpty-release-unsigned.apk:生成的空包地址 MeizuEmpty-release-unsigned.apk 此目錄下的空包
jarsigner -verbose -keystore D:\Test.keystore -signedjar D:\qianming\meizu\MeizuEmpty-release-unsigned.apk MeizuEmpty-release-unsigned.apk android
註意: 文件夾和文件不能帶空格! 生成的已簽名空包名最好和下載的待簽名空包名一樣!
然後,回車輸入密碼(就是生成簽名證書時所設置的密碼)
出現這個,說明簽名空包成功~
如果想查看具體的簽名信息請輸入以下命令:
keytool -list -v -keystore D:\Test.keystore
問題處理:
jarsigner: 找不到app的證書鏈——Android 應用認領
一、jarsigner: 找不到app的證書鏈
jarsigner: 找不到app的證書鏈。app必須引用包含私有密鑰和相應的公共密鑰證書鏈的有效密鑰庫密鑰條目。
解決方案:
jarsigner -verbose -keystore keystore文件 -signedjar 簽名以後的apk名稱 要簽名的apk keystore中的別名
在進行簽名的時候報錯:
必須引用包含專用密鑰和相應的公共密鑰證書鏈的有效密鑰庫密鑰條目
根據oppo 應用開放平臺 空包簽名幫助文檔描述
jarsigner工具簽名apk的命令格式如下:
jarsigner -verbose -keystore [您的簽名存放路徑]-signedjar [簽名後的文件名] [未簽名的文件名] [您的證書名稱] jarsigner -verbose -keystore android.keystore -signedjar OppoSignVerify_signed.apk OppoSignVerify.apk android.keystore
真正的原因是:最後應該寫的是 keystore中的別名 而不是keystore文件,不知道為什麼oppo開放平臺下載的 空包簽名幫助文檔寫的是 keystore文件 ???難道這裡有坑。。。。
最後將 keystore文件 改為 簽名文件 別名,重新簽名空包成功,如圖下: