求助大佬, Expo 的 push notifications 提示错误

2021-03-29 20:22:24 +08:00
 wuxi889

第一次使用 expo,看文档已经很清楚了,而且新起一个基础项目也能获取到 token

https://docs.expo.io/push-notifications/sending-notifications/

但是!但是我的项目就是获取不到 token,并且提示

Error: Encountered an exception while calling native method: Exception occurred while executing exported method getDevicePushTokenAsync on module ExpoPushTokenManager: Default FirebaseApp is not initialized in this process com.adminapp. Make sure to call FirebaseApp.initializeApp(Context) first.

我要的是 expo push notifications 不是 firebase 的推送。这个问题我网上查询了好多答案(很多都是让去看文档),但都没有能解决我的问题。

求大佬解答一下

1668 次点击
所在节点    React
7 条回复
hello2060
2021-03-29 20:38:49 +08:00
不懂 React 但这提示不是很清楚了吗,FirebaseApp 没初始化啊,应该调用 FirebaseApp.initializeApp(Context)
wuxi889
2021-03-29 21:27:11 +08:00
@hello2060 不是的,expo 的推送分为两种,如果使用 expo 的话是不需要配置 firebase 的,这个很清楚了。我的问题是我目前使用了 expo 的推送,但还是提示我配置 firebase,这个明显是错误的,我没找到问题在哪里。
qiongyue
2021-03-29 22:18:39 +08:00
这个没试过,我们接入的是阿里云的推送
JosephHan
2021-03-30 04:09:37 +08:00
Expo 的推送服务器只是中间层,屏蔽了复杂的配置,提供了更简便的 API,但低层还是调用的 APNs 和 FCM,这点文档里已经明确的画图说明了。所以你不初始化 Firebase 是没办法用的。
wuxi889
2021-03-30 10:52:58 +08:00
@JosephHan 我看完文档,感觉你的说话不对。我直接拿个全新的 expo 项目,什么都不配置,直接获取 expo push token 也是可以获取到的。所以感觉跟 firebase 没啥关系
wuxi889
2021-03-30 10:53:14 +08:00
@wuxi889 新项目一样可以推送
JosephHan
2021-03-31 02:50:04 +08:00
@wuxi889 如果你用 Expo Go 来跑运行代码,是的确是不需要的,因为 Expo Go 自己已经初始化过了,但你自己编译成独立程序或者进行了 eject,就必修自己初始化 Firebase 。文档明明说的很清楚,你为什么愿意相信呢? https://docs.expo.io/push-notifications/push-notifications-setup/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/766279

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX