在我的应用程序中,我用自定义声音安排了本地通知。从代码中取消后,声音继续播放。我该如何阻止它?
-(void)cancelNotification{
if(localNotification){
[[UIApplication sharedApplication] cancelLocalNotification:localNotification];
[UIApplication sharedApplication].applicationIconBadgeNumber = 0;
}
}
尝试像下面这样更改代码,希望这对您有用。我添加这个只是为了尝试一下。
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
[[UIApplication sharedApplication] cancelLocalNotification:notification] ;
}
在didRecieveRemoteNotification
中设置应用程序图标徽章编号。它会解决问题。
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
[[UIApplication sharedApplication] setApplicationIconBadgeNumber: 0];
}
最初使用 iPhone 4 进行测试时,我遇到了同样的问题。
从iOS 8开始,问题似乎已经消失,现在本地通知声音在过渡到应用程序后取消时停止。
iPhone4 [ iOS - 7.1.2 ] - 无论如何,
本地通知声音都会在应用程序中不断播放iPhone6 [ iOS - 8.1.1 ] - 以编程方式取消时本地通知声音停止
据我推断,iOS 8.x
中似乎存在修复程序(唉,我没有找到有关此事的任何文档或发行说明。
对于专注于iOS 8
的应用程序来说,问题变得不是问题(前提是您取消传入的本地通知)
我对类似的问题使用了相同的答案