(http://android-developers.blogspot.tw/2013/01/verifying-back-end-calls-from-android.html )を読んだ後、 Verifying Back-End Calls from Android Apps
(http://android-developers.blogspot.tw)も読みました/2012/09/google-play-services-and-oauth-identity.html )、それは言うGoogle Play services and OAuth Identity Tools
「GoogleAuthUtil.getToken() を呼び出して、GET または POST の各セットの前にトークンを取得する必要があります。物事を適切にキャッシュすること、およびトークンの有効期限と更新を処理することが賢明です。」
文章を読んだ後、3つの質問があります。
GoogleAuthUtil.getToken()
GET や POST の各セットの前にトークンを取得するために呼び出す必要があるため、GoogleAuthUtil.getToken()
スレッドセーフかどうかは疑問です。
バックグラウンドで定期的にサーバーと同期する必要があるシナリオを考えてみましょう。一連の HTTP 要求でサーバーに接続するたびにGoogleAuthUtil.getToken()
、有効なトークンを使用して要求を送信できるように呼び出す必要があります。
一方、ユーザーがアプリを操作している場合は、同じことを行う必要がありGoogleAuthUtil.getToken()
ます。トークンを取得するために呼び出し、一連の HTTP 要求と共にそれをサーバーに送信します。バックグラウンド同期の進行中にユーザーがアプリと対話する可能性があるためGoogleAuthUtil.getToken()
、同時に 2 つの異なるスレッドで呼び出される可能性があります。したがって、 getToken() がスレッドセーフかどうかを知りたいです。
2.トークンの有効期限を取得してトークンをキャッシュできる方法はありますか? ドキュメントを確認しました(http://developer.android.com/reference/com/google/android/gms/auth/GoogleAuthUtil.html)このような方法はありません。
3.返されたトークンを更新する必要がありGoogleAuthUtil.getToken()
ますか? もしそうなら、そうする方法はありますか?GoogleAuthUtil.getToken()
または、有効なトークンが必要になるたびに呼び出す必要がありますか?