【发布时间】:2019-08-13 08:06:13
【问题描述】:
我刚刚将我的 expo 项目与 ExpoKit 分离,我正在尝试弄清楚如何处理推送通知。在 Android 上,我有 FCM,它在我进行 expo 弹出后立即可用,AndroidManifest.xml 已正确填充,并且 AppContastants.java 中的 FCM_ENABLED 设置为 TRUE。
另一方面,在 iOS 上,我发现它有点复杂,我什至不确定我是否走在正确的轨道上,因为互联网上有很多不同的方法。据我了解,仍然可以使用 React 的通知,但他需要提供证书。有人可以证实这一点吗?因为我已经生成了自己的证书,在 XCode 中启用了所有相关的东西,它仍然无法正常工作。
我也尝试添加 PushNotificationsIOS,在 AppDelegate.m 中添加所有方法,代码构建,但我在 iOS 上没有收到任何推送通知。我什至不确定是否需要在 react-native 应用程序中编写一些代码,而不仅仅是在本机代码中。
现在,在我的 react 本机代码中,我正在使用从 Expo 导入的 Notifications,并且正在使用 Notification.getExpoPushTokenAsync() 方法,但我看到我应该使用 getDevicePushTokenAsync 而不是这个,它将返回一个令牌, FCM 或 APNS。为了调用这个方法,我需要向它传递一个配置,这将是发件人 ID,但这意味着我还需要有一个 iOS 的 firebase 项目?
TL;DR 你还能在 ExpoKit 中使用来自 Expo 的通知吗?如果是,你是怎么做的?
如果您不能使用它们,iOS 和 Android 有哪些选项?我看到了 OneSignal,但它有一些法律限制,而且 FCM 不适用于 iOS。
任何意见将不胜感激,谢谢!
【问题讨论】:
-
Servus, Pati :)
-
你能分享你的代码吗?设备如何注册通知并授予必要的权限?
标签: android ios react-native push-notification expo