【发布时间】:2019-08-28 17:31:48
【问题描述】:
我正在将 FB 5.18 上的 swift 应用程序迁移到 RN firebase,并且不再推动迁移工作。如果我删除并重新下载 RN 版本,一切正常。 我试过像这样检查令牌,我都得到了,但它仍然不起作用。权限已启用,requestPermission 只是一种预防措施。我还在几分钟内轮询了多达 50 次,直到成功。 Android 上的一切工作正常。我正在使用带有 FCM 令牌的 FCM 测试消息工具进行测试。
Firebase.messaging().requestPermission()
await (Firebase.messaging() as any).ios.registerForRemoteNotifications()
const APNSToken = await (Firebase.messaging() as any).ios.getAPNSToken()
const token = Firebase.messaging().getToken()
if (APNSToken && token) sendToServer(token)
项目文件
iOS
ios/Podfile:
- [x] 我正在使用 Pod,我的 Podfile 看起来像:
pod 'Firebase/Core', '~> 5.18.0'
pod 'Firebase/Database', '~> 5.18.0'
pod 'Firebase/Messaging', '~> 5.18.0'
AppDelegate.m:
#import <Firebase.h>
#import "RNFirebaseNotifications.h"
#import "RNFirebaseMessaging.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[FIRApp configure];
[RNFirebaseNotifications configure];
...
}
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
[[RNFirebaseNotifications instance] didReceiveLocalNotification:notification];
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(nonnull NSDictionary *)userInfo
fetchCompletionHandler:(nonnull void (^)(UIBackgroundFetchResult))completionHandler{
[[RNFirebaseNotifications instance] didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler];
}
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings {
[[RNFirebaseMessaging instance] didRegisterUserNotificationSettings:notificationSettings];
}
环境
-
您遇到问题的平台:
- [X] iOS
- [ ] 安卓
- [ ] iOS 但尚未在 Android 上测试行为
- [ ] Android 但尚未测试 iOS 上的行为
- [ ] 两者
-
如果知道,您遇到问题的平台版本是:
- `iOS 的所有版本
-
**
React Native版本:0.57.1
-
React Native Firebase库版本:5.2.4
-
Firebase您正在使用的模块存在问题:- [ ] 身份验证
- [ ] 分析
- [ ] 云 Firestore
- [X] 云消息传递 (FCM)
- [ ] Crashlytics
- [ ] 动态链接
- [ ] 函数可调用
- [ ] 在应用消息中
- [ ] 索引
- [ ] 邀请
- [ ] 实例 ID
- [ ] 机器学习套件
- [X] 通知
- [ ] 性能监控
- [ ] 实时数据库
- [ ] 远程配置
- [ ] 存储
-
你在使用
TypeScript吗?- [ ] 否
- [X] 是,版本:
2.8.4
-
您是否在使用 Expo,例如
ExpoKit?- [x] 否
- [ ] 是的,我没有被驱逐
- [ ] 是的,但我已经被驱逐到
ExpoKit - [ ] 是的,但我已经退出了原版 React Native
- 世博版:
N/A
【问题讨论】:
标签: firebase react-native push-notification migration