Twitter的回调网址

时间:2011-08-24 06:45:41

标签: android callback twitter4j

我正在创建一个Android应用程序,我必须使用twitter4j库集成twitter以上传图片。

我无法在Twitter上为应用程序指定回调Url。

请帮帮我。

1 个答案:

答案 0 :(得分:1)

你应该使用意图过滤器来获取Twitter的回调

requestToken = twitterFactory.getInstance()
                    .getOAuthRequestToken("oauth://com.example.twitter"); //note that "oauth" is your scheme name, "com.example.twitter" is your host name  on your intent-filter

要在授权后进行回调的活动,请添加以下意图过滤器

<activity android:name=".TwitterActivity"
              android:label="@string/app_name">
    <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="oauth" android:host="com.example.twitter"  />
    </intent-filter>
</activity>

在你的活动中你想要回调(在这种情况下是TwitterActivity)让你的验证者

Uri uri = getIntent().getData();
if (uri != null && uri.toString().startsWith("oauth://com.example.twitter")) {
    String verifier = uri.getQueryParameter("oauth_verifier");
    // request for access token using requestToken and verifier which are used to login second time
}

需要注意的重要事项是

- &GT;首先,您通过调用web api

请求请求令牌

- &GT;该请求令牌可用于授权您的用户

- &GT;授权后,您浏览器会加载某些可以启动您的活动的Url,因为您已使用相应的主机名和方案名称为您的活动添加了intent-filter(即host =&#34; oauth&#34;,scheme =&#34; com。 example.twitter&#34;)

- &GT;您可以从加载的Url访问令牌,即从中提取验证者并使用您的请求令牌

详情请访问https://bitbucket.org/hintdesk/android-how-to-tweet-in-twitter-within-android-client/src/f8923a4a641313cae7243da51530b472730c2439?at=default