Google Cloud Endpoints Android アプリでデバッグ モードで認証を初めて使用しようとしたときに問題が発生しました。次のように資格情報を設定します。
credential = GoogleAccountCredential.usingAudience(this,
"server:client_id:long-string-i-got-from-api-console");
credential.setSelectedAccountName(accountName);
次に、次のように使用してみてください。
final String LOCAL_APP_ENGINE_SERVER_URL = "http://xxx.xxx.x.xxx:8888";
Testdbendpoint.Builder endpointBuilder = new Testdbendpoint.Builder(
AndroidHttp.newCompatibleTransport(),
new GsonFactory(),
credential);
endpointBuilder.setRootUrl(LOCAL_APP_ENGINE_SERVER_URL + "/_ah/api/");
Testdbendpoint endpoint = endpointBuilder.build();
try {
TestDB testDB = new TestDB().setId(10101L);
TestDB result = endpoint.insertTestDB(testDB).execute(); //-- fails here!!!!
} catch ...
しかし、試行は失敗し、logCat に次のメッセージが表示されます。
03-06 23:33:20.418: W/System.err(11861): 原因: com.google.android.gms.auth.GoogleAuthException: 不明 03-06 23:33:20.418: W/System.err(11861 ): com.google.android.gms.auth.GoogleAuthUtil.getToken(不明なソース) 03-06 23:33:20.423: W/System.err(11861): com.google.android.gms.auth.GoogleAuthUtil で.getToken(不明なソース) 03-06 23:33:20.428: W/System.err(11861): com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential.getToken(GoogleAccountCredential.java で:192)