问题描述
- ios 程序杀死后 收到APNs推送 点击通知栏进入应用并无跳转 的奇怪现象
-
// 1.注册UserNotification,以获取推送通知的权限
// 2.注册远程推送
// 以上两步全没问题if (launchOptions[UIApplicationLaunchOptionsLocalNotificationKey]) {
// 当被杀死状态收到本地通知时执行的跳转代码 UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey]; NSDictionary *userinfo = [Utility jsonStringToObject:notification.userInfo[@"info"]]; // 需跳转的页面 [_barDelegate getBarNotice:userinfo];
}
照理来说 在程序杀死后 收到通知点进去会跳转到某个页面
但是现在有个奇怪现象,我点击进去并没跳转,但是再次杀死程序,此时通知栏里面刚刚我点击的那一条还在,我在点击就能跳转了 我就纳闷了 为什么第一次杀死程序 收到通知不跳转 真心疑惑 求解答
解决方案
通知还在说明通知并为被读或删除。。。
解决方案二:
通知是在系统里的注册的 程序杀了之后还会一直在内存里面 在相关类里面 dealloc 方法里面 移除通知就行了
-(void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"" object:nil];
}
希望能帮到你
时间: 2024-10-21 14:41:45