我已经注册了我的设备(iPhone 4s,而不是模拟器),用于来自Parse的推送通知。这是成功的,因为弹出的出现问我是否愿意注册我的设备推送通知出现。
但是,当我点击Accept时,我忘记了将我的deviceToken注册到存储在服务器上的PFInstallation数据中的代码。现在,每当我在AppDelegate.m方法didFinishLaunchingWithOptions:中调用didFinishLaunchingWithOptions:时,生成deviceToken的方法didRegisterForRemoteNotificationsWithDeviceToken:都不会被调用。
如何调用此方法,并在数据库中获取我的deviceToken?另外,推送通知在没有deviceToken的情况下工作吗?我尝试过发送全局推送通知,但是我的iPhone没有接收到。
发布于 2015-11-15 22:58:27
我通过使用以下说明删除我的应用程序来修正这个问题:http://www.macworld.co.uk/how-to/iphone/how-clean-ios-junk-files-cache-3609079/ (关于“如何清理你的iPhone内存:删除文件数据”的说明)。当我找到不同应用程序的菜单时,我找到了我的应用程序,点击了它,然后点击了"Delete app“。这完全删除了你的应用程序从你的手机,所以当你重新安装它,它可以再次运行didRegisterForRemoteNotificationsWithDeviceToken:。
发布于 2015-11-14 00:18:16
尝试将此片段添加到-application:didFinishLaunchingWithOptions中:
// Enable Push Notifications
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
{
//ios8 ++
if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerUserNotificationSettings:)])
{
UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
}
}
else
{
// ios7
if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerForRemoteNotificationTypes:)])
{
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)];
}
}https://stackoverflow.com/questions/33699325
复制相似问题