首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android -构建通知,TaskStackBuilder.addParentStack不工作

Android -构建通知,TaskStackBuilder.addParentStack不工作
EN

Stack Overflow用户
提问于 2012-11-30 02:39:21
回答 11查看 33.2K关注 0票数 61

我正在尝试从通知中启动一个活动,就像Android文档中解释的那样,但是当我打开通知,然后按back按钮时,HomeActivity (家长)并没有打开,相反,应用程序关闭了。我做错了什么?

代码语言:javascript
运行
复制
    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)
    stackBuilder.addParentStack(MainActivity.class);

    stackBuilder.addNextIntent(resultIntent);
EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2012-11-30 02:45:04

您需要为要启动的活动添加父堆栈,而不是它的父堆栈。

替换:

代码语言:javascript
运行
复制
stackBuilder.addParentStack(MainActivity.class);

通过以下方式:

代码语言:javascript
运行
复制
stackBuilder.addParentStack( MatchActivity.class );

这里假设您已经在清单(16+接口)中定义了父级:

代码语言:javascript
运行
复制
<activity android:name=".MatchActivity"
    android:parentActivityName=".MainActivity"
    ... />

如果您是在API 16下进行开发,那么您必须将父对象定义为:

代码语言:javascript
运行
复制
<activity android:name=".MatchActivity">
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".MainActivity" />
</activity>
票数 98
EN

Stack Overflow用户

发布于 2016-03-20 13:59:10

如果所有的解决方案都不起作用,并且你确信你已经按照你所需要的一切去做了,你就可以卸载你的应用程序,然后重新安装carefully...then 它。对我很管用!

票数 83
EN

Stack Overflow用户

发布于 2015-10-19 17:25:46

代码语言:javascript
运行
复制
Intent resultIntent = new Intent(App.getContext(), TargetActivity.class);
Intent backIntent = new Intent(App.getContext(), ParentActivity.class);
backIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
final PendingIntent resultPendingIntent = PendingIntent.getActivities(
                                    App.getContext(), 0, 
               new Intent[]{backIntent, resultIntent}, PendingIntent.FLAG_ONE_SHOT);
mNotifyBuilder.setContentIntent(resultPendingIntent);

这解决了我在单击通知时使用父堆栈的问题

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13632480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档