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
}
注意到这里重要的是
- >首先你通过调用Web API
索要请求记号 - >这一请求令牌可以用来授权用户
- >授权之后,你浏览器加载某个可以启动您的活动的Url,因为您已添加意图 - 使用相应的主机名和方案名称过滤您的活动(即主机=“OAuth的”,计划=“com.example.twitter”)
- >您可以从加载地址让你访问令牌即从中提取验证和使用您的请求令牌