0

我試圖將Udacity Conference中央Android應用程序連接到我在谷雲上的應用程序引擎應用程序。Android和谷歌端點身份驗證例外

我得到以下異常

com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAuthIOException」產生的原因:com.google.android.gms.auth.GoogleAuthException: INVALID_AUDIENCE」

事情我已經嘗試:

  1. 生成 「在App Engine憑據頁的WebClient ID」 和 「Android客戶端ID」。在應用引擎應用中使用Web客戶端ID作爲「Android_AUDIENCE」,在Android應用中使用「server:client_id:」。

  2. 生成我的密鑰庫並在創建Android客戶端ID時使用它。在命令行簽名jar並嘗試通過複製apk來安裝應用程序。

  3. 在build.gradle中添加我的keystore憑證並運行應用程序。

  4. 使用應用程序文件夾中存在的「android.keystore」釋放鍵。

  5. 使用/.android文件夾中的「debug.keystore」。

嘗試刪除並重新創建Android雲端控制檯上的Android客戶端ID沒有運氣。我用這個Udacity Android <-> Cloud Endpoints app configuration進行連接。

@Api(name = "conference", 
    version = "v1", 
    scopes = {Constants.EMAIL_SCOPE, "https://www.googleapis.com/auth/plus.login email"}, 
    clientIds = 
      { 
      Constants.WEB_CLIENT_ID,Constants.WEB_CLIENT_ID_2, Constants.API_EXPLORER_CLIENT_ID, Constants.ANDROID_CLIENT_ID 
      }, 
    audiences = {Constants.ANDROID_AUDIENCE}, 
    description = "API for the Conference Central Backend application.") 
+0

請問您可以爲您的端點或/和您的端點類發佈您的API註釋嗎? –

+0

會做,謝謝。 – MaveNeo

+0

請使用代碼更新您的問題,並且不要將代碼放入您的評論 –

回答

0

「INVALID_AUDIENCE」意味着你無論是在Google Cloud Console正確沒有setup你的Android應用程序,或者你「的Web應用程序客戶端ID」和「Android應用客戶端ID」是不是在同谷歌雲計算項目。

在Google雲端控制檯中創建「Android應用程序客戶端ID」時,請務必爲您的Android應用程序使用正確的package name。還要確保您正確生成了SHA1指紋。

在同一個Google雲計劃項目中,您還需要使用enable any APIs與您的客戶ID一起使用。