關於app簽名——無法對 jar 進行簽名: 時間戳頒發機構沒有響應
這段時間,一直在嘗試ionic2,打重新拾起ionic的過程中發現很多流程已經和之前的流程存在很大的差異,在簽名時遇到了錯誤,集體錯誤如下:
根據網上查找資料,說關閉防火墻即可,經實驗不可以。
執行的命令
jarsigner -verbose -digestalg SHA1 -sigalg MD5withRSA -tsa https://timestamp.geotrust.com/tsa -keystore happen.keystore -keypass coo -storepass coo -signedjar signed.apk platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk happen.keystore
或者
jarsigner -verbose -tsa https://timestamp.geotrust.com/tsa -keystore ****.keystore -signedjar ****.apk platforms/android/build/outputs/apk/android-release-unsigned.apk ****.keystore
執行都提示無法對 jar 進行簽名: 時間戳頒發機構沒有響應,在網上查找相關錯誤也沒有發現正確的答案,於是打開時間戳地址發現時間戳地址在墻內和墻外都不能訪問,於是查找相關資料發現時間戳地址已經過期,更換時間戳地址即可
相關鏈接:
https://stackoverflow.com/questions/43585380/is-http-timestamp-geotrust-com-tsa-not-longer-available-for-signtool
https://knowledge.symantec.com/support/partner/index?page=content&id=NEWS10071&viewlocale=en_US
打開第二個地址發現我們命令中的地址顯示已經過期,測試新地址可用,替換為新地址即可。
正確命令如下
jarsigner -verbose -tsa http://sha256timestamp.ws.symantec.com/sha256/timestamp -keystore happen.keystore -signedjar happen.apk platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk happen.keys
tore
或者
jarsigner -verbose -digestalg SHA1 -sigalg MD5withRSA -tsa http://sha256timestamp.ws.symantec.com/sha256/timestamp -keystore happen.keystore -keypass 111111 -storepass 111111 -signedjar signed.apk platforms/androi
d/app/build/outputs/apk/release/app-release-unsigned.apk happen.keystore
以上為1.0時采用的簽名方法:
下邊是ionic2 document文檔內的簽名方法:
keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.jks android-release-unsigned.apk my-alias
官方地址
關於app簽名——無法對 jar 進行簽名: 時間戳頒發機構沒有響應