1. 程式人生 > >釋出Google Play的應用facebook登入異常

釋出Google Play的應用facebook登入異常

問題:
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