android taskstackbuilder 无法正常工作

Life is short , play more!
本文来自lihao's Blog,转载请注明。

用android devloper上的例子,使用taskstackbuilder就是无法成功。

代码:

//创建一个intent
Intent resultIntent = new Intent(context, MatchActivity.class);;
    resultIntent.setFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);

    TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);

    // Adds the back stack for the Intent (but not the Intent itself)
   //根据你的manifest,设定top 的activity 
    stackBuilder.addParentStack(MatchActivity.class);

//然后把match的activity设为下一级 。  即 第一层(top)为MainActivity(它的设定在manifest中), addnextIntent 则是我们从通知栏要进入的activity。  当进入MatchActivity 后, 返回,则返回top层,即 MainActivity.
    stackBuilder.addNextIntent(resultIntent);

manifest文件需要对MatchActivity 添加如下信息

很不幸的是, 无法成功。

所以只能使用笨蛋方法了。 就是先进入MainActivity, 然后根据extra 信息, 再start activity到MatchActivity. 这样,利用系统构造的taskstack则, 从MatchActivity 就可以回到MainActivity了。


发表评论

电子邮件地址不会被公开。 必填项已用*标注