วิธีแก้ปัญหา “Missing Push Notification Entitlement” ใน Unity3d

Missing-Push-Notification-Entitlement
Missing-Push-Notification-Entitlement

วิธีแก้ปัญหา “Missing Push Notification Entitlement” ใน Unity3d iOS
ช่วงนี้มีโอกาสได้อัพโหลดแอพพลิเคชั่นขึ้นไปบน apple store ถึง 2 แอพ และทั้ง 2 แอพพัฒนาจาก Unity3d
สิ่งที่เปลี่ยนไปอย่างชัดเจนคือ การตรวจทานของทาง apple staff ตรวจเร็วขึ้นมาก จากปกติต้องรอเป็นอาทิตย์
กว่าจะเปลี่ยนสถานะเป็น In-Review
แต่ทั้งสองแอพที่อัพขึ้นไปใช้เวลาเพียง 3 วันก็สามารถเปลี่ยนสถานะเป็น Ready For Sale


ตอนอัพโหลดโหลดอาจจะไม่เจอปัญหา แต่พอเป็น Build version บน store จะมีแจ้งแบบนี้

Missing-Push-Notification-Entitlement


สาเหตุของปัญหา

จากการหาข้อมูลจาก forum ต่าง ๆ ทั้งของ apple เองและจากที่อื่นอย่าง stackoverflow

  • บางที่บอกสาเหตุเกิดจากปัญหาที่ตัว apple API เอง เหมือนกับว่าตัว certifcate ที่มี push notification
    ที่เราติดตั้งใน keychain และนำไปสร้าง provisionning profile จะติดฟังก์ชั่น push มาด้วย
    ไม่ว่าเราจะตั้งค่าให้ใช้งาน push notification หรือไม่ก็ตาม
  • ส่วนบางที่สาเหตุเพราะมีการใช้งาน push ในแอพบางตัวของเรา ผ่านเครื่องที่ใช้ Build เครื่องเดียวกัน
    ทำให้แอพที่ไม่ได้ใช้งาน push ติดมาด้วย ถึงจะลบ certificate จาก keychain แล้วสร้างใหม่ก็ไม่หาย


วิธีแก้ปัญหา

สำหรับ unity ให้ดาวน์โหลด plugin ตัวนี้ครับ Missing Push Notification Entitlement
จากการทดลองติดตั้งกับทั้ง 2 แอพล่าสุดและ Submit to review ก็สามารถผ่านการ Approve จาก apple ได้ปกติ