3

twitter4j を Android アプリに統合しましたが、ほとんどの場合シームレスに動作しますが、ユーザーが twitter へのログイン資格情報をブラウザーに保存するように指示したときに twitter で認証しようとすると、散発的な問題が発生することに気付きました。getOAuthRequestToken(callbackURL) への呼び出しが行われた後、通常どおり Android ブラウザーが開かれますが、ブラウザーは次のようなエラー ページをポップアップ表示します。

Web page not available The web page at https://api.twitter.comtwitter-callback-uri:///?oath_token=.....................

そのため、ブラウザが無効な URL にリダイレクトされているようです。リダイレクトは次のようにすべきだと思います: twitter-callback-uri:///?oath_token=................

詳細情報を提供するために、トークンのリクエストは次のようになります。

rToken = twit.getOAuthRequestToken("twitter-callback-uri:///");

そして、この uri を認識するためにインテント フィルターが Android マニフェストに追加されました。インテント フィルタは次のようになります。

    <activity android:name=".LoginActivity" 
        android:screenOrientation="unspecified"
        android:finishOnTaskLaunch="true">
        <intent-filter> 
            <action android:name="android.intent.action.VIEW" /> 
            <category android:name="android.intent.category.DEFAULT" /> 
            <category android:name="android.intent.category.BROWSABLE" /> 
            <data android:scheme="twitter-callback-uri"/> 
        </intent-filter> 
    </activity>

これは通常は機能しますが、唯一の問題は、ユーザーの Twitter ログイン資格情報がブラウザーに保存されている場合のようです。

4

1 に答える 1

1

私はあなたと同じ問題を抱えています。私に尋ねた後にあなたの質問を見つけました:)これを見てください

Twitter API が無効なコールバックを返す - 認証できません

具体的には、私の質問のコード スニペットを見てください。

于 2012-06-13T12:16:47.267 に答える