繁体   English   中英

本地推送通知iOS

[英]Local Push Notification ios

如果我想在一周内没有打开我的应用说回来再玩后发送一个推送通知,我是否需要获得用户的许可才能向他们发送此本地推送通知?

在iOS 8中,您需要征求用户权限才能安排“ 本地通知” 在iOS 8之前不需要。

还有一件事,您必须了解Push NotificationLocal Notification之间的区别。 当您描述问题时,它将使人们感到困惑。 推送通知是从APNs服务器发送的。 并且本地通知是从您的应用程序安排的。

为此,您需要使用本地通知 您需要做的是在用户打开应用程序一周后安排本地通知。 每次您安排通知时,取消所有较早的通知。

要取消所有通知,请使用:

[[UIApplication sharedApplication] cancelAllLocalNotifications];

要安排通知,请使用:

  UILocalNotification* n1 = [[UILocalNotification alloc] init];
    n1.fireDate = [NSDate dateWithTimeIntervalSinceNow: 60];
    n1.alertBody = @"one";
    UILocalNotification* n2 = [[UILocalNotification alloc] init];
    n2.fireDate = [NSDate dateWithTimeIntervalSinceNow: 90];
    n2.alertBody = @"two";
    [[UIApplication sharedApplication] scheduleLocalNotification: n1];
    [[UIApplication sharedApplication] scheduleLocalNotification: n2];

是的,您只需要在iOS 8中注册本地通知。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

if ([application respondsToSelector:@selector(registerUserNotificationSettings:)]) {
    [application registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert|UIUserNotificationTypeBadge|UIUserNotificationTypeSound categories:nil]];
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM