SDK版本:40平台:安卓
推送通知仅在开发设备的开发模式下工作,而在开发模式下不工作(usbYarnReact-n运行-安卓)在其他设备...(fcm设置)在我使用bundleRelease构建之后(弹出)并发布到playstore。它不工作,我可以设置为生产在谷歌控制台或博览会控制台?在哪里?我测试失眠(exp.host/-/api/v2/push/send),在开发中可以,但在其他设备和生产中不行,为什么在测试中只能在一个设备上工作,而不能在其他设备上工作?我看到安装后也会生成指数推送。
OBS:我正在重新安装应用程序后刷新新令牌...
我最近尝试过:
我生成了. apk并在另一个设备中尝试,但仅在我的开发设备中不工作
// Notifications.setNotificationHandler(null); //tried as well
Notifications.setNotificationHandler({
handleNotification: async () => {
return {
shouldShowAlert: true,
shouldPlaySound: true,
shouldSetBadge: false,
};
},
});
这个问题是因为我用gradlew assemleRelease来构建的?我需要用eas构建平台android来构建吗???
我当前使用的experienceId:@用户名/slug而不是ApplicationId来注册推送令牌
1条答案
按热度按时间1bqhqjot1#
您的通知在生产中不起作用的原因有2个。
1.我认为您正在使用
Notifications.getExpoPushTokenAsync()
创建一个通知令牌,这将创建一个只能在Expo环境中使用的通知令牌。我建议您使用Notifications.getDevicePushTokenAsync()
创建通知令牌,这将创建一个可以与FCM一起使用的通知令牌。1.您调用的Expo API
exp.host/–/api/v2/push/send
不正确。如果您想让通知在物理设备上工作,您需要首先创建一个设备令牌,您可以像第1点中提到的那样生成该令牌,然后您应该调用FCM APIhttps://fcm.googleapis.com/fcm/send
。这应该能解决你的问题。