最後のGoogle +ニュースはhereとthisで読んだ後です。ログイン後にアクセストークンを取得するにはどうすればよいですか?Android:Googleを使ってアクセストークンを取得するには
答えて
API referenceをご覧になりましたか?
あなたが探しているクラスはcom.google.android.gms.auth.GoogleAuthUtil
です。
それは、とりわけ、以下の方法で提供しています。説明
static String getToken(Context context, String accountName, String
を:
は、ユーザーを認証し、有効なGoogleの認証トークンを返す、またはトークンを取得中にエラーが発生した場合に例外をスローします。
用途:
String token;
try {
token = GoogleAuthUtil.getToken(context, accountName, scope);
} catch (GooglePlayServicesAvailabilityException playEx) {
Dialog dialog = GooglePlayServicesUtil.getErrorDialog(
playEx.getConnectionStatusCode(),
Activity.this,
AUTH_REQUEST_CODE);
// Use the dialog to present to the user.
} catch (UserRecoverableAutException recoverableException) {
Intent recoveryIntent = recoverableException.getIntent();
// Use the intent in a custom dialog or just startActivityForResult.
} catch (GoogleAuthException authEx) {
// This is likely unrecoverable.
Log.e(TAG, "Unrecoverable authentication exception: " + authEx.getMesssage(), authEx);
} catch (IOException ioEx) {
Log.i(TAG, "transient error encountered: " + ioEx.getMessage());
doExponentialBackoff();
}
のOAuthスコープ(ただのGooglerのために有用であることが)疑問に答えるために:完全に理解するために
を、グーグル、それは認証と認可の概念についていくつか。
ユーザー/パスワードが存在するかどうかは、部分であることを確認してください。
範囲は承認部分に必要となります:あなたがユーザーに代わって行う、または受け取ることが許可されているもの。許可されるスコープのリストを取得するには、OAuthサービスのドキュメントを確認してください。
「OpenIDのプロフィールメールhttps://www.googleapis.com/auth/plus.loginhttps://www.googleapis.com/auth/plus.me」:https://developers.google.com/+/api/oauth?hl=pt-ZA
例えば、利用者からの可能なすべての情報を取得するには、スコープを使用することができます。最も一般的なスコープが上で見つけることができ
GoogleやG +から、
(最初のワードは、プロトコルを参照して、応答のフィールドを求める単語、及び所望のスコープに続くスペースセパレータtoghether宣言することができる)
注:アクセストークンを使用してスコープで以前に要求しなかったことを要求または実行しようとすると、サービスは認証エラーを返す可能性があります。 Googleにとって
、あなたが彼のOAuthサービスと範囲について学ぶために使用することができます良いツールがOAuthの遊び場です:https://developers.google.com/oauthplayground/
あなたは非同期タスクを使用して、それを取得する必要があります。
public void onConnected(Bundle connectionHint) {
// Reaching onConnected means we consider the user signed in.
Log.i(TAG, "onConnected");
// Update the user interface to reflect that the user is signed in.
mSignInButton.setEnabled(false);
mSignOutButton.setEnabled(true);
mRevokeButton.setEnabled(true);
// Retrieve some profile information to personalize our app for the user.
Person currentUser = Plus.PeopleApi.getCurrentPerson(mGoogleApiClient);
AsyncTask<Void, Void, String > task = new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... params) {
String token = null;
final String SCOPES = "https://www.googleapis.com/auth/plus.login ";
try {
token = GoogleAuthUtil.getToken(
getApplicationContext(),
Plus.AccountApi.getAccountName(mGoogleApiClient),
"oauth2:" + SCOPES);
} catch (IOException e) {
e.printStackTrace();
} catch (GoogleAuthException e) {
e.printStackTrace();
}
return token;
}
@Override
protected void onPostExecute(String token) {
Log.i(TAG, "Access token retrieved:" + token);
}
};
task.execute();
System.out.print("email" + email);
mStatus.setText(String.format(
getResources().getString(R.string.signed_in_as),
currentUser.getDisplayName()));
Plus.PeopleApi.loadVisible(mGoogleApiClient, null)
.setResultCallback(this);
// Indicate that the sign in process is complete.
mSignInProgress = STATE_DEFAULT;
}
あなたのアクセストークンはトークン変数に格納されます。
- 1. ルビーを使ってfacebookのoauthアクセストークンを取得する方法
- 2. base_facebook.phpとfacebook.phpを使ってアクセストークンを取得して保存しますか?
- 3. アプリの所有者が間違ったアクセストークンを取得する
- 4. URLからアクセストークンを取得
- 5. アカウントマネージャーからアクセストークンを取得する
- 6. アクティブフェイスブックセッションでアクセストークンを取得する
- 7. Android:google voiceを使用してコールインテントを起動するには?
- 8. omniauth-salesforce gemを使用してアクセストークンを取得
- 9. Googleログイン新しいGoogleSignInOptionsを使用してアクセストークンを取得
- 10. Facebook graphApi oAuth - アクセストークンを取得するには?
- 11. linkedInからアクセストークンを取得するには
- 12. Android Foursquareアクセストークン:内部クラスからaccessTokenを取得するには?
- 13. iOS用MGTwitterEngine:アクセストークンを取得するには?エラー401
- 14. pythonでfacebookのoauthリダイレクトからアクセストークンを取得するには?
- 15. FacebookのログインでWebページを作成してアクセストークンを取得するには?
- 16. Javaを使用してFacebookの永続的なアクセストークンを取得する方法
- 17. rmarkdownを使ってtry()でエラーメッセージを取得するには?
- 18. Nokogiriを使ってjavascriptの値を取得するには?
- 19. iphoneでmapkitを使って地名を取得するには?
- 20. JenkinsでSonarを使ってJaCoCoカバレッジを取得するには?
- 21. node.jsを使ってツイートを取得するには
- 22. CyberSourceを使ってクレジットカード情報を取得するには?
- 23. jsonを使ってjsonオブジェクトのフィールドを取得するには?
- 24. phonegapを使ってlistviewとtabviewエフェクトを取得するには?
- 25. Javaを使ってシステムIPを取得するには?
- 26. jqueryを使ってリンクのhrefを取得するには?
- 27. nodejsでkoaを使って "HTTP_REFERER"を取得するには?
- 28. gitを使ってeclipseソースを取得するには?
- 29. RQ pythonでidを使ってジョブを取得するには?
- 30. aSmackを使ってMultiUserChatルームのDiscussionHistoryを取得するには?
スコープとは何ですか? – Sameer
この[link](https://gist.github.com/ianbarber/9607551)では、正確にトークンを取得する方法について説明しています。これらのコードを非同期タスクにラップします。 – Arefin
@arefinはアカウント名です。指定されたリンクのメールIDを指しますか? –