05-30 19:44:35.425 333-335/? D/dalvikvm﹕ GC_CONCURRENT freed 865K, 11% free 14926K/16647K, paused 1ms+5ms 05-30 19:44:35.441 4161-4172/? I/GLSUser﹕ GLS error: BadAuthentication 05-30 19:44:35.441 4161-4172/? V/GoogleLoginService﹕ Returning error intent with: ComponentInfo{com.google.android.gsf.login/com.google.android.gsf.login.LoginActivity} 05-30 19:44:35.464 17779-17905/? E/MusicStreaming﹕ Received null auth token. android.accounts.AuthenticatorException: Received null auth token. at com.google.android.music.sync.google.MusicAuthInfo.getAuthToken(MusicAuthInfo.java:42) at com.google.android.music.sync.api.SignupClient.checkInviteStatus(SignupClient.java:86) at com.google.android.music.tutorial.SignupStatus$SignupCheckService.onHandleIntent(SignupStatus.java:308) at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.os.HandlerThread.run(HandlerThread.java:60) 05-30 19:44:35.464 17779-17905/? I/CheckMusicStoreAvail﹕ No verified accounts found 05-30 19:44:35.496 17779-17905/? I/CheckMusicStoreAvail﹕ Starting account signup check 05-30 19:44:35.558 186-213/? I/ActivityManager﹕ Displayed com.google.android.gms/.auth.login.ShowErrorActivity: +226ms 05-30 19:44:35.574 16430-16430/? D/OpenGLRenderer﹕ Flushing caches (mode 0) 05-30 19:44:35.605 16430-16430/? D/OpenGLRenderer﹕ Flushing caches (mode 0) 05-30 19:44:35.628 4161-4172/? I/GLSUser﹕ GLS error: BadAuthentication 05-30 19:44:35.636 4161-4172/? V/GoogleLoginService﹕ Returning error intent with: ComponentInfo{com.google.android.gsf.login/com.google.android.gsf.login.LoginActivity}
原因は、エラーが起きた時に、理由の含まれたExceptionを渡して再度ログインを試みるのですが、この際別のアプリに連携します。
二段階認証だとこの処理でブラウザアプリに連携しそこで認証コードを入力して戻るという処理なのですが、このとき新たにActivityが生成されるので、また認証処理を実行してしまうというループになっているようでした。
もどってきてもきちんと処理をうけとれるようにAndroidManifest.xmlでandroid:launchMode="singleInstance"にすることでとりあえずの処置をしました。
この認証処理は、OnStartとかで実装するのではなく、ボタンなどのトリガーで呼び出すように実装するのが正しのかとおもいます。
ちなみに、上記ログに関連する情報は下記にもあります。
http://stackoverflow.com/questions/12929569/error-while-trying-trying-to-use-oauth2-accountmanagerfuture-to-authenticate-w
修正したアプリはこちらにアップしました。
https://bitbucket.org/yokmama/just-player/downloads/JUSTPLAYER3_v1.0_053001.apk
いちおうGoogleDriveアプリと連携できたので、今後はStreaming処理に手を入れていく予定です。
今後のマイルストーンは以下のように進めます。
・ストリーミング処理の再構成
・ファイルキャッシュの導入
・画面フロー時の処理を見直し
・GogleDriveファイル選択画面のUIをリファクタリング
・イコライザー設定のバックアップ機能追加
・ブックマーク機能の検討
・その他クラウドへの対応
ちなみに、要望にありましたがBox.netは難しくないのでやりましょう。
SkyDrive(OneDrive)のほうはAndoridからアクセスできるかどうかから調査しないといけないので、できるとはまだ明言できないんだけども。
No comments:
Post a Comment