问题:
facebbook后台配置了debug和release的签名,然后发布发布google play之后,下载下来的应用登录facebook会报签名错误,原因是google play重新签名了.
解决:
把google play的签名加到facebook后台就行了
1.在google play的版本管理-应用签名 下载签名证书deployment_cert.der
2.然后把证书加到自己的签名文件jks文件内
keytool -import -file [deployment_cert.der路径] -keystore [应用jks文件路径]
3.签名
keytool -exportcert -keystore [应用jks文件路径] | openssl sha1 -binary | openssl base64
4.最后把获取的签名添加到faccebook后台即可,格式:hAvVouZBX9exF9p2wmJebwgx9Cm=
2.问题:
更改了一个包名的另外一个应用和之前应用用的同一套签名,第一个产品发布googleplay之后,把gp的证书导入到签名了,导致第二个应用的证书导不进去,会提示如下错误:
keytool 错误: java.lang.Exception: 证书未导入, 别名 已经存在
解决:
把之前第一个产品的gp证书别名改一下就行了,因为gp证书的默认别名是mykey,更改别名:
keytool -changealias -keystore my.jks -alias [需要更改的别名] -destalias [新的别名]
然后再导第二个证书就ok了.
keytool常用命令:
- 查看jks签名库里的签名信息:
keytool -v -list -keystore [应用jks文件路径]
- 更改别名:
keytool -changealias -keystore my.jks -alias [需要更改的别名] -destalias [新的别名]
- 删除别名:
keytool -delete -alias [需要删除的别名] -keystore [应用jks文件路径] -storepass [应用jks密码]
- 导出证书:
keytool -export -alias myalias -keystore my.jks -file myalias.crt -storepass jkspassword
- 打印证书信息:
keytool -printcert -file myalias.crt
- 将证书导入到密钥库并生成别名
keytool -import -alias myotheralias -file myalias.crt -keystore my1.jks -storepass jkspassword