蘋果剛剛釋出了具有大量功能的Xcode 11.4 beta。值得注意的功能之一是在模拟器中模拟遠端推送通知,這意味着現在可以在模拟器中觸發遠端通知。

Xcode 11.4 beta
1、前置要求:
- Xcode 11.4 beta或更高版本。
- app 的Bundle ID。
- 目前使用的模拟器的裝置辨別符。
- 需要推送的負載(payload)。
- 終端(Terminal)。
在計算機科學與電信領域,負載(英語:Payload)是資料傳輸中所欲傳輸的實際資訊,通常也被稱作實際資料或者資料體。信頭與中繼資料,或稱為開銷資料,僅用于輔助資料傳輸。[1][2]
在計算機病毒或電腦蠕蟲領域中,負載指的是進行有害操作的部分,例如:資料銷毀、發送垃圾郵件等。
2、擷取模拟器的裝置辨別符
Window -> Devices and Simulator -> 選擇目前使用的模拟器 -> 複制對應的ID
或者使用快捷鍵
Shift + Command + 2 -> 選擇目前使用的模拟器 -> 複制對應的ID
3、生成推送通知負載(payload)
推送通知負載為标準Apple格式:
{"aps":{"alert":"這是通知的内容","badge":1,"sound":"default"}}
複制
将上面JSON以
.apns
格式儲存。
4、在模拟器中觸發通知
- 使用Xcode将app在模拟器中運作
- 打開終端
- cd到推送負載(payload.apns)檔案的所在檔案夾
- 執行指令
xcrun simctl push <device-identifier> <your-bundle-id> notificationpayload.apns
複制
示例:
xcrun simctl push BBF604BB-2CE2-4949-B706-88DE5A1B5678 com.weixian.pushdemo payload.apns)
複制
然後就能看的推送出現在你的模拟器了。