ฉันกำลังพยายามเปิดใช้งานการแจ้งเตือนแบบพุชสำหรับแอปพลิเคชัน macOS ของฉัน ดูเหมือนว่าทุกอย่างจะทำงาน ฉันสามารถรับโทเค็นอุปกรณ์ได้ ส่งการแจ้งเตือนโดยไม่มีข้อผิดพลาด ยกเว้นว่าไม่มีการแจ้งเตือนปรากฏบน Mac ของฉัน
ฉันเพิ่มโค้ดต่อไปนี้เพื่อดูว่าใบสมัครของฉันได้รับหรือไม่
func application(_ application: NSApplication, didReceiveRemoteNotification userInfo: [String : Any]) {
print(userInfo)
}
และหลังจากที่ฉันส่งการแจ้งเตือน ฉันก็เห็นสิ่งต่อไปนี้ในคอนโซล
["aps": {
alert = "Alert - Hello World";
sound = "ping.aiff";
}]
ดูเหมือนว่าอุปกรณ์จะเข้าถึงได้ เพียงแต่ไม่แสดงการแจ้งเตือน
ฉันได้ทดสอบการตั้งค่าเดียวกันทุกประการบน iOS แล้ว และใช้งานได้ดีและแสดงการแจ้งเตือนที่นั่น ดังนั้นฉันจึงขาดอะไรบางอย่างไปโดยเฉพาะใน macOS
ฉันได้ลองทำสิ่งต่อไปนี้เพื่อแก้ไขปัญหานี้:
- ทดสอบโดยปิดและเปิดแอปพลิเคชัน (ไม่ทำงานทั้งสองครั้ง)
- ตรวจสอบให้แน่ใจว่าเปิดใช้งานการแจ้งเตือนสำหรับแอปพลิเคชันในการตั้งค่าระบบ
- หากฉันสร้างการแจ้งเตือนในพื้นที่ด้วยตนเองด้วยโค้ด มันจะทำงานได้อย่างสมบูรณ์ และแบนเนอร์การแจ้งเตือนจะปรากฏขึ้น
- ฉันไม่สามารถทดสอบกับ macOS เวอร์ชันเก่าได้เนื่องจาก API การแจ้งเตือนแบบพุชที่ฉันใช้เพิ่งเปิดตัวใน macOS Mojave
- ฉันได้ลองสร้างโปรเจ็กต์ทดสอบอื่นแล้ว แต่ปัญหาเดียวกันก็เกิดขึ้น
- ฉันแน่ใจว่าปิดห้ามรบกวนแล้ว และได้ตรวจสอบในศูนย์การแจ้งเตือนเพื่อดูการแจ้งเตือนแล้ว แต่จะไม่แสดงที่นั่นเช่นกัน
ฉันจะทำให้มันแสดงแบนเนอร์และเล่นเสียงบน macOS ได้อย่างไร