Questions tagged «apple-push-notifications»

Apple Push Notification Service是由Apple Inc.创建的与iOS 3.0一起启动的服务。APNS与Mac OS X Lion Server一起使用可将更新通知推送给已注册通过配置文件接收更新的客户端,使用服务器的邮件,日历和联系人服务。这意味着iPhone等设备以及Mac上的iCal之类的应用程序可以收到通知

12
iOS应用程序:如何清除通知?
我有一个iOS应用程序,其中向其中发送了一些推送通知。我的问题是,在点击邮件/通知后,它们会留在iOS的通知中心中。下次打开应用程序时,如何在通知中心中为我的应用程序删除通知? 我碰到过有人呼吁setApplicationIconBadgeNumber零值清除通知的帖子。对我来说这似乎很奇怪,所以我相信也许存在另一种解决方案? 编辑1: 我在清除通知时遇到了一些问题。请在这里查看我的代码: - (void) clearNotifications { [[UIApplication sharedApplication] setApplicationIconBadgeNumber: 0]; [[UIApplication sharedApplication] cancelAllLocalNotifications]; } - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (launchOptions != nil) { NSDictionary* dictionary = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; if (dictionary != nil) { NSLog(@"Launched from push notification: %@", dictionary); [self clearNotifications]; } } return YES; } …



20
为什么不调用registerForRemoteNotificationsWithDeviceToken
我正在制作一个要实现苹果推送通知服务的应用程序。我正在按照本教程中的分步说明进行操作。 但是仍然没有调用这些方法。我不知道是什么引起了问题。谁能帮我? - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { //NSString * token = [[NSString alloc] initWithData:deviceTokenencoding:NSUTF8StringEncoding]; NSString *str = [NSString stringWithFormat:@"Device Token=%@",deviceToken]; NSLog(@"Device Token:%@",str); //NSLog(@"Device token is called"); //const void *devTokenBytes = [deviceToken bytes]; //NSLog(@"Device Token"); } - (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)err { NSString *str = [NSString stringWithFormat: @"Error: %@", err]; …

14
获取用于推送通知的设备令牌
我正在处理推送通知。我编写了以下代码来获取设备令牌。 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. // Add the view controller's view to the window and display. [self.window addSubview:viewController.view]; [self.window makeKeyAndVisible]; NSLog(@"Registering for push notifications..."); [[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)]; return YES; } - (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { NSString …

11
找不到适用于应用程序的有效“ aps-environment”权利字符串
我正在尝试配置我的应用程序以支持推送通知,但始终收到此错误:无法获取令牌,错误:错误Domain = NSCocoaErrorDomain代码= 3000“找不到适用于应用程序的有效“ aps-environment”授权字符串” UserInfo = 0x1f818fc0 { NSLocalizedDescription =找不到适用于应用程序的有效“ aps-environment”授权字符串} 我确实启用了我的应用程序以支持推送通知(目前仅用于开发)。 我确实在启用推送通知之后创建了配置文件。 我的捆绑包标识符与配置文件中显示的标识符相同。 在我的配置文件中,有一个字符串:aps-environment 我确保在项目和目标的“代码签名身份”部分下,所有值都被选择为我的配置文件。 还有其他想法吗?谢谢。


12
在后台运行应用时通过推送通知更新徽章
当应用程序进入前台时,我有推送通知正在工作并设法更新图标徽章计数。 但是我对此有点困惑... iPhone收到通知,弹出消息似乎激活了我的应用程序,并且徽章仅在我启动该应用程序后更新。 就用户体验而言,这听起来不对。我的理解是,徽章计数应通过递增计数来通知用户需要采取什么措施,但这不会发生,直到应用程序上线以后。 那么,有没有一种方法可以让应用在收到推送通知时以及在后台时更新其徽章计数? 请注意,我的应用程序不使用位置,并且我已UIRemoteNotificationTypeBadge在通知注册请求中使用。 干杯AF


7
远程通知iOS 8
如何在iOS 8中获取用于远程通知的设备令牌?我所使用的方法didRegisterForRemoteNotificationsWithDeviceToken中AppDelegate在IOS <8,并且它返回令牌的设备。但是在iOS 8中却没有。

6
APN设备令牌是否对每个单独的应用程序都是唯一的?
我在iTunes商店中有两个应用程序-都实现推送通知。在测试向这些生产应用发送通知的过程中,我注意到有一个针对应用A的推送已命名并打开了应用B。 这两个应用程序都安装在同一部手机上。我在设备表中查看,发现为两个应用程序列出的设备令牌(当然还有设备ID)都相同。 根据需要,我在服务器上使用两个不同的证书-每个应用程序一个。我有点假设设备令牌或证书会将消息路由到正确的应用程序,但显然不是。 我可以在NSLog中看到,从每个应用程序发送的令牌的确相同。 设备令牌应该对每个应用程序都是唯一的吗?如果是这样,则不知道我的测试电话如何将两个应用程序的相同设备令牌发送到我的服务器。请记住,这来自当前在应用商店中的两个应用。 谢谢你的帮助!

8
未调用didReceiveRemoteNotification,iOS 10
在iOS 9.3中,didReceiveRemoteNotification以下两种情况都会调用此方法。 1)收到推送通知时2)用户通过点击通知启动应用程序时。 但在iOS上10,我注意到,该didReceiveRemoteNotification方法不不,当用户通过点击通知启动应用程序触发。仅在收到通知时调用。因此,从通知启动应用程序后,我无法采取任何进一步的措施。 该如何解决?任何想法?


6
在iOS 13上未获取APNS设备令牌
我有与APNS设备令牌有关的问题。在使用Xcode 10.2和iOS 12.1之前。这时我曾经在委托方法中获取设备令牌 -(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 我正在像这样注册APNS,它工作正常。 UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; center.delegate = self; [center requestAuthorizationWithOptions:(UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionBadge) completionHandler:^(BOOL granted, NSError * _Nullable error){ if(!error){ [[UIApplication sharedApplication] registerForRemoteNotifications]; } }]; 现在,当将iOS 13安装到我的iPhone设备上并使用Xcode 11时,不会调用委托方法didRegisterForRemoteNotificationsWithDeviceToken。无法理解此问题。我已经对此进行了研究,我知道从委托方法获取令牌有一些变化,但是在我的情况下甚至没有调用委托方法。再次适用于iOS 12。

3
Flutter Push通知未显示在IOS上
我在Flutter和IOS的Push通知方面遇到问题。 我的设置和起作用的东西: 1)我安装了该firebase_messaging: ^5.1.6软件包,没有错误/按照他们对IOS的所有说明进行操作 2)我已请求用户获得IOS许可并接受接收推送通知 3)我能够在IOS和Android设备上获得FCM令牌 4)我在Apple开发人员部分中创建了一个密钥,并将该密钥添加到FCM 5)我已关闭应用程序/在测试时将其发送到后台-仍然没有运气 6)我已使用Xcode将google-service-info文件添加到Runner 7)我在XCode Capabilities中添加了推送通知和后台通知 8)我正在iPhone 7物理设备和物理iPad上进行测试 我已使用curl将通知发送到IOS设备 curl -X POST --header "Authorization: key=<myAuthKEY>" \ --Header "Content-Type: application/json" \ https://fcm.googleapis.com/fcm/send \ -d "{\"to\":\"<myDeviceKey>\",\"notification\":{\"body\":\"Hello\"},\"priority\":10}" 我收到了Firebase的成功回复 {"multicast_id":<SomeIdHere>,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"<SomeIdHere>"}]} 这是我检索令牌的方法: firebaseMessaging.getToken().then((String token) { _authModel.setNotificationToken(token); }); 在IOS上运行该应用程序时,没有出现任何Firebase错误。 我已经搞砸了两天了,所以有点烦人,以上所有内容似乎都可以在Android上使用。 任何建议,请。 Flutter Doctor: Doctor summary (to see all details, run flutter …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.