android信鸽推送通知栏,【信鸽推送】点击推送通知后,默认会从程序Launcher进入,返回时会回到主界面的问题...

代码如下:

1、在Launcher界面(非主界面MainActivity),比如WelcomeActivity,

onCreate方法里判断如下代码:

// 判断是否从推送通知栏打开的

XGPushClickedResult click = XGPushManager.onActivityStarted(this);

if (click != null) {

finish();

return;

}

即便默认点击通知会从主程序入口进入,只要你是从信鸽推送过来的,直接咔嚓掉。。。也就不会有返回的时候主程序回到栈顶的状态。。。。

2、这种状况下,我们在WelcomeActivity的onDestroy方法里判断,

如果当前堆栈里有MainActivity则表示在启动状态,

如果没有,则表示是从后台进入(程序被强行已退出状态),此时如果Destroy的话,未免有点不友好,所以我们可以再手动启动App的主界面MainActivity.

代码如下:

// 判断是否从推送通知栏打开的

XGPushClickedResult click = XGPushManager.onActivityStarted(this);

if (click != null) {

if(AppManager.getInstance().getActivity(MainActivity.class) == null){

UIHelper.startActivity(this, MainActivity.class);

}

finish();

return;

}

置于AppManager是什么神物,你可以参考这里(你肯定知道这是oschina的源码吧,哈哈~~~~)

【当然这种情况只适合后台给你发的是通知,如果是自定义消息(不懂的可以找个推送的后台尝试了看看),我想一切都好办了,想怎么跳,自己说了算。。。】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值