iOS,处理程序推送通知

用户名

当他不在应用程序中时(后台),有什么方法可以处理设备中的推送通知?

假设我的apns发送消息:“ hello world”,我想在应用程序处于后台时在设备显示推送通知之前更改消息(不是由服务器,而是由我的应用程序)。

加文·邦尼(Gavin Bunney)

您将需要使用Silent Push Notifications来执行此操作,因为在使用普通的Push Notifications时您无法更改消息(操作系统将在收到消息时显示该消息)。

发送静默推送时,您可以在应用程序委托中对其进行处理,然后安排本地通知:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler {

    NSDictionary *apsPayload = [userInfo objectForKey:@"aps"];
    if ([userInfo[@"content-available"] boolValue] /* silent push */) {
        UILocalNotification *localNotification = [[UILocalNotification alloc] init];
        localNotification.alertBody = @"Hello Local World!";
        localNotification.fireDate = [NSDate date];
        localNotification.timeZone = [NSTimeZone defaultTimeZone];
        localNotification.soundName = UILocalNotificationDefaultSoundName;
        [[UIApplication sharedApplication] scheduleLocalNotification:localNotification];
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章