我希望在应用处于后台的某个时间间隔后显示多个提醒。
目前我正在使用本地通知显示提醒,但当用户按下本地通知的取消按钮时,我无法检测到操作。
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
if (localNotif == nil)
return;
localNotif.fireDate = [NSDate date];
localNotif.timeZone = [NSTimeZone defaultTimeZone];
// Notification details
localNotif.alertBody = @"This is local notification message.";
// Set the action button
localNotif.alertAction = @"View";
localNotif.alertAction = @"Yes";
localNotif.soundName = UILocalNotificationDefaultSoundName;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
[localNotif release];
当app在后台时,我还有其他方式可以在屏幕上显示提醒吗?
答案 0 :(得分:1)
如果您的用户决定忽略您的UILocalNotification
,您将无法检测到。
由于您无法在后台显示UIAlertView
,因此您唯一的选择就是使用UILocalNotification
。
但正如您所述,您无法检测用户是否点击了取消按钮,同时iOS6和通知中心也不再有取消按钮。只有当用户选择将通知显示为警报时,才会有关闭按钮。您仍然无法检测到通知已关闭或根本没有查看。
您唯一的选择是在应用程序打开之前通过通知继续发送垃圾邮件。但它被认为是糟糕的用户体验,可能会让用户讨厌你的应用程序。
答案 1 :(得分:0)
这在ios.only中无法使用推送通知,您可以显示它。