Tag: 推送通知

在我的应用程序中为推送通知select声音

我正在开发应用程序,并且需要让用户从我的应用程序设置中select用于从系统声音进行推送通知的音调。 如何让用户打开系统声音,并select一个推送通知? 像WhatsApp的通知设置 喜欢这个链接 链接

收到推送通知时打开特定的标签栏

接收推送通知时,如何打开特定的标签栏? 我已经把[self.tabBarController setSelectedIndex:2]; 在viewDidAppear和数据logging中发生了什么,它显示它通过tabBar 2 viewController,但它不打开/显示该页面,并保持在第一个控制器/第一个tabBar。 然后我终止应用程序并打开回来,自动/突然它打开tabBar 2 viewController。 任何人都可以给任何想法或示例代码来解决这个问题? 这是在我的didReceiveRemoteNotification; – (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { NSLog(@"Remote notification received"); if([userInfo valueForKey:@"app"]) { NSString *action_app = [userInfo valueForKey:@"app"]; NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:action_app forKey:@"app"]; NewVC *sample=[[NewVC alloc]init]; [sample viewDidLoad]; //[self.tabBarController setSelectedIndex:2]; [self clearNotifications]; }else{ NSLog(@"—nothing to read—"); } } NewVC位于标签栏2 ..

推送通知和后台获取模式

这是我的理解,系统将要么从closures或在后台运行,并允许您提取之前,它显示系统警报给用户。 我必须下载一些数据以显示用户何时点击推送通知。 我看到我的提取活动正在执行,而推送显示给用户。 在我们完成数据提取之前,允许用户点击通知并启动应用程序。 它是否正确?

iOS – 收到推送通知后显示视图

我正在开发一个应用程序,其主UI基于标签栏控制器。 在其中一个选项卡中,我有一个集合视图,通过导航控制器深入到详细视图。 我想要做的是在接收到推送通知时,我想select这个特定的选项卡,从服务器获取最新的数据,find要显示的特定项目,然后将详细视图推到屏幕上以显示所述项目。 我的问题是,我收到以下消息之后collectionView:didSelectItemAtIndexPath: 终止由于未捕获exception“NSGenericException”的应用程序,原因:'无法find一个导航控制器for segue'FavouriteItem'。 只有当源控制器由UINavigationController的一个实例pipe理时,才能使用push segues。 以下是我到目前为止所做的: 应用程序委托应用程序:didReceiveRemoteNotification: [self selectFavouritesTab]; NHFavouritesViewController *favouritesViewController = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"Favourites"]; [favouritesViewController displayFavouriteForPushNotificationWithId:favouriteId]; 从FavouritesViewController – 获取最新的collections夹后,我发送一条消息displayFavouriteItemWithId: – (void)displayFavouriteItemWithFavouriteId:(NSNumber*)favouriteId { NSArray* results = [_collectionViewData filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"SELF.favouriteId == %@", favouriteId]]; NSInteger row = [_collectionViewData indexOfObject:[results lastObject]]; NSIndexPath *indexPath = [NSIndexPath indexPathForRow:row inSection:0]; [[self collectionView] selectItemAtIndexPath:indexPath animated:YES scrollPosition:UICollectionViewScrollPositionNone]; [self.collectionView.delegate collectionView:self.collectionView […]

Swift – 远程通知和导航控制器stream程

我正在设置推送通知,我将发送到设备的一些数据,我想加载导航控制器堆栈上的某个视图。 但是,我想要保持导航堆栈完好,即目标视图控制器应该仍然有一个导航栏与后退button向后回到前一个视图控制器等。 stream程:导航控制器 – >根视图控制器 – >目标控制器。 我如何才能在UINavigationController堆栈中显示特定的非root用户视图控制器,而不会丢失层次结构和function? 现在我正在做这个,它显示了正确的视图控制器,但没有导航栏: let idPushNotification = userInfo["idPushNotification"] as String let storyboard = UIStoryboard(name: "Main", bundle: nil) let destinationViewController = storyboard.instantiateViewControllerWithIdentifier("DestinationViewController") as DestinationViewController destinationViewController.idPushNotification = idPushNotification.toInt()! let navigationController = self.window?.destinationViewController; navigationController?.presentViewController(destinationViewController, animated: false, completion: nil)

从我们的服务器发送推送通知时的关键结果

我们有一个appstore上的应用程序,并与注册推送通知。 他们已经成功地工作了,但是我们现在试图发出一个“全球性”的推动,发生了一些奇怪的事情。 这就是我们在服务器端.php文件中的内容: //Loop through tokens in tokenArray $i = 0; $t = 0; foreach($tokenArray as $token) { $t++; // Make notification $msg = chr(0) . pack('n', 32) . pack('H*', $token) . pack('n', strlen($payload)) . $payload; // Send $result; if($message != null) { $result = fwrite($fp, $msg, strlen($msg)); } if ($result) $i++; } // Close […]

我怎么知道用户是否不允许推送通知

我看到这个问题,但不明白是否有明确的答案。 我可以通过设置一个标志来判断用户是否在应用程序的第二次启动时按下了“不允许”: BOOL didRequest = [[NSUserDefaults standardUserDefaults] boolForKey:@"DidRequestPushNotifications"]; UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes]; if (types == UIRemoteNotificationTypeNone && didRequest) { [self showAlertToUserToEnableRemoteNotificationsOnDeviceInSettings]; } [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"DidRequestPushNotifications"]; [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)]; 但是,对于应用程序的首次发布 – 两个委托成功和失败的方法都不会被调用,这意味着没有办法知道肯定。 任何工作?

通过Parse发送推送通知时没有声音

无论出于何种原因,我无法让我的推送通知发出默认声音,也无法在收到徽章时更新徽章号码。 这是我的代码如下。 你认为我的代码有问题吗? 还是有configuration问题,我不知道? 谢谢你的帮助! PFQuery *pushQuery = [PFInstallation query]; [pushQuery whereKey:@"installationUser" containedIn:recipients]; // Send push notification to our query PFPush *push = [[PFPush alloc] init]; [push setQuery:pushQuery]; NSDictionary *data = [NSDictionary dictionaryWithObjectsAndKeys: message, @"alert", @"Increment", @"badge", nil]; [push setData:data]; [push setMessage:[NSString stringWithFormat:@"%@ sent you a photo!", currentUser.username]]; [push sendPushInBackgroundWithBlock:^(BOOL succeeded, NSError *error) { if(!error) […]

ios替代使用iCloud推送通知,如“查找我的iPhone”

我一直在寻找“find我的iPhone”的应用程序,它似乎是使用iCloud和没有推送通知接收alertView关于通知。 通过在后台运行一些机制,并在收到通知后提醒用户。 我想知道的是,这个应用程序是苹果为这个应用程序特殊的例外,所有其他应用程序必须做推送通知? 或者,我可以制作一个在后台运行的应用程序,就像“查找我的iPhone”应用程序,并通过iCloud进行通信。 先谢谢你。

iOS远程通知没有收到,除非从Xcode运行

我正在使用Firebase将无声的远程通知发送到iOS应用程序。 当从Xcode运行应用程序时,无论是在前台还是后台,都能正常工作。 这是快速的,它的工作原理。 但是,如果我停止从Xcode运行,并从我的设备启动应用程序通知不接收,无论该应用程序在前台或后台。 有时我会在15分钟后收到通知,但并非总是如此。 有时如果我打开应用程序,通知就会出现。 我的通知优先级为 10, content_available为 true和数据 。 它没有标题/正文,因为我只是不想触发networking请求,并根据networking请求的结果向用户显示本地通知。 任何想法,为什么这是? 编辑:如果我在有效载荷中包含一个标题/正文,即使没有从Xcode运行,直接传递通知,但它似乎并没有让我在后台运行代码,直到通知被激活( application:didReceiveRemoteNotification:userinfo没有运行)。