前人未踏の領域へ Androidアプリ開発編

Androidアプリ開発に関する調査メモ置き場。古い記事にはアプリ以外も含まれます。

Android: Twitterアプリ経由でログインできない(解決済み)

内容

Twitterアカウントでのログインを可能にしているアプリで、Twitterアプリのバージョンを 9.54.0-release.0 の場合に 認証トークンを取得できずにログインできなくなる。

対応

Twitterアプリのバージョンを 9.54.1-release.0 にアップデートする。

感想

Twitter Kit for Android を使っていると、「Sign in with Twitter」ボタンを押下した際に、 端末にTwitterアプリがインストールされていればそれ(具体的にはSingleSignOnActivity)を起動してログインし、 インストールされていない場合はWebView(OAuthActivity)が起動してTwitterのログイン画面が表示され、そこからログインする仕組みになっている。 今回のケースではonActivityResultでintent.dataの中身がすべてnullが返るようになっていた。 アップデートで解消されたということはTwitterアプリ側のバグという扱いらしい。

ただ、SingleSignOnActivityを呼べばTwitterからログインできるのはTwitter Kit for Android(既にサポート切れ)がそれを呼ぶように作られているからなのか、 Twitterが公式サポートとして意図的にその機能を提供しているのかが定かではないし、ドキュメントも存在しない。 アプリ経由でログインできた方がUI的には便利なのでこのまま使えるようにしておいて欲しいのだが、どうなることやら。 今回のような思わぬトラブルを避けるためにはWebView経由でのログインに移行しておいた方が無難という考え方もある。