我有一个tabActivity(.Tabs),其中一个标签有twitter集成(.TwitterTab)。从该选项卡,您可以单击按钮登录到Twitter。一旦您在移动门户网站上通过Twitter进行身份验证,您就会返回到应用程序...但它会转到推特活动(.TwitterTab),而不是标签活动(.Tabs)。
如何选择.TwitterTab标签返回.Tabs?
<activity android:name=".service.oath.PrepareRequestTokenActivity" android:launchMode="singleTask">>
<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="x-oauthflow-twitter" android:host="callback" />
</intent-filter>
</activity>
答案 0 :(得分:0)
当你为Android Manifest中的一个活动设置Scheme和Host时,它告诉android所有涉及该特定Scheme和Host的请求都应由该活动处理。
使用oAuth和Twitter4j进行身份验证时,必须提供一个身份验证完成后使用的回调URL。根据您上面的清单摘录,您的内容将类似于:x-oauthflow-twitter://callback
。验证过程完成后,系统会告诉android转到处理您提供的回调的活动。 (在您的情况下,.service.oath.PrepareRequestTokenActivity)
因此,为tabActivity设置方案和主机,以便android在验证后返回那里,并覆盖onResume来处理返回。我确信有一种编程方式可以在达到这一点后打开Twitter标签。
您可以查看this post以获取有关scheme / host和twitter4j身份验证的更多示例。