我正在尝试部署由Cordova创建的android apk但我错了。这是我的过程:
1)构建发布版apk:cordova build android --release
2)生成密钥库:keytool -genkey -v -keystore my-release-key.keystore -alias com.MyCompany.AppsName -keyalg RSA -keysize 2048 -validity 10000
我创建名为MyPass的密码,并以表格(姓名,国家,......)
3)签署了应用:jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore android-release-unsigned.apk com.MyCompany.AppsName
4)签收后签名:jarsigner -verify -verbose -certs android-release-unsigned.apk
我得到了这个输出:
“ jar验证。 警告: 此jar包含未验证证书链的条目。 此jar包含不包含时间戳的签名。如果没有时间戳,用户可能无法在签署者证书的到期日期(2043-12-07)之后或任何未来的撤销日期之后验证此jar。“
5)压缩Apk:"c:\pathtosdk\zipalign.exe" -v 4 android-release-unsigned.apk com.MyCompany.AppsName.apk
6)然后我在Android设备上复制Apk。
但是当我尝试安装应用程序时,设备会要求我允许未知来源......就像它没有签名一样。 谁知道我哪里错了?
提前致谢
答案 0 :(得分:0)
你的apk可能签名并且完全没问题。它要求允许未知来源的原因是因为默认情况下它不允许从谷歌播放商店以外的其他来源安装.apk文件。安全问题 DEMO
答案 1 :(得分:0)
如果您没有从Play商店下载应用程序,那么这就是您将收到的消息。这与正在签名的应用程序没有任何关系。
答案 2 :(得分:0)
尝试安装派生的apk。首先在Play商店的Alpha Release中发布您的应用。然后从alpha版本下载派生的apk。我认为这会有所帮助。