在我的iOS应用中,我希望在UIAlertView
方法中接收推送通知时隐藏didreceiveRemotenotification
。
app委托的整个页面我没有为show UIAlertView 编写代码。那为什么会自动显示呢?
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
[PFPush handlePush:userInfo];
if (application.applicationState == UIApplicationStateActive) { self.noti_json=[userInfo objectForKey:@"msg"];
[[NSNotificationCenter defaultCenter] postNotificationName:[userInfo objectForKey:@"title"] object:self];
} }
先谢谢。
编辑 (为我的didReceiveRemoteNotification:
添加代码):
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
[PFPush handlePush:userInfo];
if (application.applicationState == UIApplicationStateActive)
{
self.noti_json=[userInfo objectForKey:@"msg"];
[[NSNotificationCenter defaultCenter] postNotificationName:[userInfo objectForKey:@"title"] object:self];
}
}
答案 0 :(得分:1)
删除第[PFPush handlePush:userInfo];
行
并仅在类型不是您想要避免的类型时显示您自己的警报。
UserInfo必须具有一些标识符或通知类型,以便您可以相应地处理类型特定的通知。
修改强>
或者只需使用下面的行
if(![[userInfo objectForKey:@"type"] isEqualToString:@"typeName"]){
[PFPush handlePush:userInfo];
}
答案 1 :(得分:0)
如果您收到推送通知的提醒,可能是因为您的应用设置已启用提醒功能。