我正在尝试用react-native-fcm接收推送通知。如文档所述,请按以下方式安装和实现所有步骤
a)安装react本机-fcm npm install react-native-fcm --save
( b)将库与react-native link react-native-fcm连接
c)从firebase控制台下载GoogleService-Info.plist文件并将其放在/ios/my-project目录中
( d)用Cocoapods 1. cd ios & pod安装Firebase消息传递2.将pod 'Firebase/Messaging'添加到Podfile 3. pod install中
( e)编辑AppDelegate.h
@import UserNotifications;
@interface AppDelegate : UIResponder <UIApplicationDelegate,UNUserNotificationCenterDelegate>
/*@interface AppDelegate : UIResponder <UIApplicationDelegate>*/( f)编辑AppDelegate.m
#import "RNFIRMessaging.h"
//...
-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//...
[FIRApp configure];
[[UNUserNotificationCenter currentNotificationCenter] setDelegate:self];
return YES;
}
-(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
-(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];
}( g)启用能力
然后我将我的应用程序存档在ipa中,并尝试在设备上启动它。加载屏幕出现应用程序崩溃。请向我解释一下,我的错误在哪里?
PS。没有一个.js文件不更改create-react-native-app命令。
发布于 2018-07-26 09:42:26
请仔细看一看笔记,他已经解释了为什么你要切换到反应本土化的火力基地。
https://stackoverflow.com/questions/51535594
复制相似问题