如何解决在iOS模拟器上测试FCM通知
从Xcode 11开始,iOS模拟器现在可以接收推送通知。这可以通过执行特定命令或向模拟器提供JSON文件来完成。我从以下博客获得此信息:Test Notification on Simulator。
但是,在我的用例中,我使用Firebase Cloud Messaging向我的应用程序的用户(Android和iOS都)发送通知。我无法在模拟器上测试Firebase生成的通知,因为FCM的有效负载有所不同。
有没有办法做到这一点?
我找到了一个与此主题相关的similar question,但到目前为止还没有答案。
解决方法
对于在模拟器中测试推送通知,只需创建一个新文件并将其粘贴到json对象之后,然后将文件保存在.apns中,然后将该文件拖放到模拟器中,然后推送即可工作。
{
"aps" : {
"alert" : {
"title" : "sarunw.com","body" : "A asdfsadfsadf"
},"badge" : 5
},"Simulator Target Bundle": "bundleId"
}
对于不同的有效负载,只需在Postman中使用以下JSON对象
{
"to" : "ewebWDSSwYc:APA91bGOARO4eq9LlOfgfXPQZMK3IiRFanhzSSgkD6cVqJiPbnyuEgsvQMarDEl6Hg7_UMtFM6Hn90jyTsSENNqLNNLVjLSypR0voAO3j6orIsgabX-t0cpfJ0qpB2SzhZiXvor0r__d","notification":
{
"title":"ABC","body":"123","mutable_content" : true,"category":"CustomSamplePush"
},"data":
{
"sender_contact_code" : "+92","sender_contact" : "(555) 564-8583","group_name":"Testing Group","type":"NewMessage","type_id":"1213","notification_type_id":"123213"
}
}
使用此网址-> https://fcm.googleapis.com/fcm/send (类型为POST),并且需要授权,您需要将服务器密钥置于“密钥值”中,这样便可以使用自己的格式化对象发送推送通知。
您还可以使用Pusher测试推送通知,并且我已经上传了屏幕截图以供参考。
,从 Xcode 12(不是 11)开始,注册者可以通过 APNS 有效负载推送和接收。如果拖放不起作用,您可以使用终端:
xcrun simctl push booted YOUR_BUNDLE payload.json
与:
- "booted" = 当前模拟器
- "payload.json" = APNS 文件 你的 Mac。
它可能看起来像:
{
"Simulator Target Bundle": "xxx.xxx.xx ","aps":{
"alert":{
"title":"XXX","body":"YYY YYYY"
},"badge" : 5,"data":{
// stuff
},"mutable-content":1
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。