4
我在我的应用程序中使用Twitter oAuth
库。用户使用Twitter帐户登录。Android:如何使用SingleTask清除意图堆栈
在活动A中,twitter登录可用。当用户登录时,我想开始没有历史记录的活动B.这是我所有的东西:
首先,Manifest.xml
,所以我设置launchMode=singleTask
如Twitter API请求:
<activity
android:name=".A_Activity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:theme="@android:style/Theme.Black.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<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="my_twitter_scheme" />
</intent-filter>
</activity>
下面是我开始的活动B:
Intent i = new Intent(A.this, B.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
注:我通过BroadcastReceiver实例调用活动B.
当我登录,我的接收器开始活动B正确,但不幸的是,当我按下后退按钮,应用义无反顾地活动A.
我想这是关于launchMode
和我说,微博需要一个选项。我究竟做错了什么?任何帮助或建议(也许关于Twitter)都会很棒。
谢谢你的回答,它的工作。 – Martin