首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在iOS上未收到通知react-native-push-notification

在iOS上未收到通知react-native-push-notification
EN

Stack Overflow用户
提问于 2018-07-21 00:54:53
回答 3查看 3.3K关注 0票数 1

我按照文档和youtube上的一些教程,在ios和Android上集成了react-native-push通知,但我有一个问题,我在iOS设备上没有收到任何通知,甚至是本地通知,但在android上,它工作得很好。我不知道是否需要向您展示代码,因为它与文档中的代码相同。

顺便说一句,我正在使用firebase进行云消息传递,并使用我的p8密钥对其进行了配置。

EN

回答 3

Stack Overflow用户

发布于 2018-07-21 01:21:41

我也有类似的问题,即使所有相关的设置都打开了。令人沮丧的是,我使用了Google Play商店中的"hi security“来管理通知。在“通知”设置为开后,我发现所有的徽章都显示出来了-未接来电和未读消息都显示在主屏幕和应用程序上。

票数 1
EN

Stack Overflow用户

发布于 2018-11-01 22:13:06

我也尝试过使用react-native-firebase,但是没有收到work.No推送通知。后来,我使用react-native-fcm实现了推送通知,它起作用了。您可以查看链接https://github.com/evollu/react-native-fcm

票数 0
EN

Stack Overflow用户

发布于 2018-11-05 14:25:31

您没有收到通知,可能是因为firebase没有正确集成到您的应用程序中。正确集成的步骤如下:

react- native -firebase库不适用于我使用react -native- .Integrating成功接收推送通知的firebase来反应本地应用程序。

1.安装react-native-fcm: npm install react-native-fcm --save

适用于android的firebase控制台中的

  1. :下载google-services.json文件并将其放置在android/app目录中。对于iOS:下载GoogleService-Info.plist文件并将其放入/ios/ your -project-name目录(靠近您的Info.plist)

3.使用cd ios && pod init配置项目

4.编辑新创建的Podfile: pod install

5.编辑AppDelegate.h:

代码语言:javascript
复制
    @import UserNotifications;

    @interface AppDelegate:UIResponder<UIApplicationDelegate,UNUserNotificationCenterDelegate>

    @interface AppDelegate : UIResponder <UIApplicationDelegate>

6.编辑AppDelegate.m:

代码语言:javascript
复制
#import "RNFIRMessaging.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

代码语言:javascript
复制
[FIRApp configure];
[[UNUserNotificationCenter currentNotificationCenter] setDelegate:self];

return YES;

}

代码语言:javascript
复制
-(void)userNotificationCenter:(UNUserNotificationCenter *)center 
willPresentNotification:(UNNotification *)notification 
withCompletionHandler:(void (^) . 
      (UNNotificationPresentationOptions))completionHandler
 {
    [RNFIRMessaging willPresentNotification:notification 
     withCompletionHandler:completionHandler];
 }

#if defined(__IPHONE_11_0)

- (void)userNotificationCenter:(UNUserNotificationCenter *)center 
  didReceiveNotificationResponse:(UNNotificationResponse *)response 
   withCompletionHandler:(void (^)(void))completionHandler
{
    [RNFIRMessaging didReceiveNotificationResponse:response 
     withCompletionHandler:completionHandler];
}

#else

- (void)userNotificationCenter:(UNUserNotificationCenter *)center 
  didReceiveNotificationResponse:(UNNotificationResponse *)response 
  withCompletionHandler:(void(^)())completionHandler
{
    [RNFIRMessaging didReceiveNotificationResponse:response 
    withCompletionHandler:completionHandler];
 }

#endif

 //You can skip this method if you don't want to use local notification
-(void)application:(UIApplication *)application 
didReceiveLocalNotification:(UILocalNotification *)notification {

[RNFIRMessaging didReceiveLocalNotification:notification];

 }

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

[RNFIRMessaging didReceiveRemoteNotification:userInfo 
fetchCompletionHandler:completionHandler];
}

7.将头文件路径添加到XCode中:

打开XCode。按CMD+1键或单击XCode项目。转到Build Settings,选择All and Combined。搜索选项卡中的搜索标题搜索路径。确保有一行$(SRCROOT)/../node_modules/react-native-fcm/ios.如果不是,就添加它。

8.添加GoogleService-Info.plist:

确保文件没有被移动到文件夹中。需要在XCode中的项目文件夹上单击鼠标右键,然后将文件添加到。在选择文件时,如果需要,请在选项页面中选择复制。

9.共享库设置:

如果您使用的是Pod install方法,请确保在Library文件夹下看到Pods.xcodeproj。确保在Library文件夹下看到RNFIRMessaging.xcodeproj。如果您没有看到这些文件中的任何一个,请通过右键单击库文件夹并将文件添加到来重新添加它们。Pods.xcodeproj应位于ios/Pods/下,RNFIRMessaging.xcodeproj应位于node_modules/react-native-fcm/ios下。确保在构建阶段选项卡下的Link Binary With Libraries下看到libRNFIRMessaging.a。如果不是,请将库文件夹下的RNFIRMessaging.xcodeproj下的文件拖放到其中。

10.添加功能选择您的项目功能并启用:推送通知后台模式>远程通知。

FirebaseAppDelegateProxyEnabled此指令假定您具有FirebaseAppDelegateProxyEnabled=YES (默认),以便Firebase将挂接推送通知注册事件。如果您关闭此标记,您将自己管理APNS令牌并与Firebase令牌链接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51447212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档