我正在使用推送通知来通知用户。我已经在真机上测试成功。现在我尝试将它集成到我的应用程序中。我想知道如何获取用户的设备令牌。
我想我可以通过 http 或 ftp 将设备令牌发送到我的服务器并将它们存储在数据库中。服务器负责向所有提供令牌的设备推送通知。这是完成这项工作的正确方法还是有更好的方法?
我正在使用推送通知来通知用户。我已经在真机上测试成功。现在我尝试将它集成到我的应用程序中。我想知道如何获取用户的设备令牌。
我想我可以通过 http 或 ftp 将设备令牌发送到我的服务器并将它们存储在数据库中。服务器负责向所有提供令牌的设备推送通知。这是完成这项工作的正确方法还是有更好的方法?
您可以使用以下代码打印设备令牌:
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
NSString *str = [NSString stringWithFormat:@"Device Token=%@",deviceToken];
NSLog(str);
}
更多信息:点击这里:Tutorial_Programming Apple Push Notification Services
是的,您需要在服务器端处理它以及badge
您在应用程序图标旁边看到的数字。您可以使用PHP
每次用户启动应用程序时接收令牌的文件(或您熟悉的任何文件),然后在 db.xml 中将徽章图标设置为 0。对于您发送的每个新通知,您将该字段增加 +1。希望这对你有用。
如果您仍然没有获得设备令牌,请尝试输入以下代码,以便为您的设备注册推送通知。
它也适用于 ios8 或更高版本。
如果 __IPHONE_OS_VERSION_MAX_ALLOWED >= 80000
if ([UIApplication respondsToSelector:@selector(registerUserNotificationSettings:)]) { UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge|UIUserNotificationTypeAlert|UIUserNotificationTypeSound categories:nil]; [[UIApplication sharedApplication] registerUserNotificationSettings:settings]; [[UIApplication sharedApplication] registerForRemoteNotifications]; } else { [[UIApplication sharedApplication] registerForRemoteNotificationTypes: UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound];
} 别的
[[UIApplication sharedApplication] registerForRemoteNotificationTypes: UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound]; 万一