Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript iOS中的世博会背景推送通知_Javascript_Ios_React Native_Apple Push Notifications_Expo - Fatal编程技术网

Javascript iOS中的世博会背景推送通知

Javascript iOS中的世博会背景推送通知,javascript,ios,react-native,apple-push-notifications,expo,Javascript,Ios,React Native,Apple Push Notifications,Expo,一开始,我担心世博会有一个定制的通知系统(如果你知道这样的广告的话,我想“可能会有一个p8”,哈哈)。最后,我对世博会推送通知服务发送信息的直接性和便捷性印象深刻。我遇到的唯一问题是意识到这在模拟器上永远不会起作用。否则,它真的很漂亮,甚至比p8还容易 但是当我尝试发送背景通知时,我注意到了一种不同的行为模式。在这种情况下,似乎什么都没有发生 我的平台是iOS,我的应用程序组件有一个扩展,它绑定到此,然后只触发一次: extensionAPNs.js 从'react native'导入{Aler

一开始,我担心世博会有一个定制的通知系统(如果你知道这样的广告的话,我想“可能会有一个p8”,哈哈)。最后,我对世博会推送通知服务发送信息的直接性和便捷性印象深刻。我遇到的唯一问题是意识到这在模拟器上永远不会起作用。否则,它真的很漂亮,甚至比p8还容易

但是当我尝试发送背景通知时,我注意到了一种不同的行为模式。在这种情况下,似乎什么都没有发生

我的平台是iOS,我的应用程序组件有一个扩展,它绑定到此,然后只触发一次:

extensionAPNs.js
从'react native'导入{Alert}
从“expo”导入{权限,通知}
从'@callstack/async storage'导入异步存储
从'@src/lib/APNs'导入{handleNotification}
导出异步函数registerForPushNotifications(){
const{status}=wait Permissions.getAsync(Permissions.NOTIFICATIONS)
如果(状态!=“已授予”){
const{status}=wait Permissions.askAsync(Permissions.NOTIFICATIONS)
如果(状态!=“已授予”){
Alert.Alert('未收到侦听APN的权限')
返回
}
}
const expoToken=wait Notifications.getExpoPushTokenAsync()
Alert.Alert('已收到使用令牌'+expoToken'侦听APN的权限)
this.subscription=Notifications.addListener(handleNotification)
this.setState({expoToken})
AsyncStorage.setItem('expoToken',expoToken)
}
从'react native'导入{Alert}
导出异步函数handleNotification(){
Alert.Alert(JSON.stringify(参数))
console.log('arguments',arguments)
}
在其他地方,我共享该令牌,以便发送消息。我注意到,当我的服务器发送其背景消息时,它没有工作,尽管它确实在帖子中注册为成功(没有打开应用程序,没有添加警报弹出窗口…即使应用程序位于前台,也没有弹出窗口)。所以我去了第一个我工作的“hello world”。立刻,它也起作用了

但是,如果我像配置自己的消息一样配置它,使用JSON数据、类别和内容--而没有其他内容,那么什么也不会发生。不在前台,不在后台。关闭时不会皱眉: