Saya memiliki aplikasi yang telah kami kirimkan beberapa versi dalam 6 bulan terakhir dan kami menggunakan APNS. Saya mendapat email berikut dari Apple setelah meningkatkan ke Xcode 8
Pengembang yang terhormat,
Kami telah menemukan satu atau beberapa masalah dengan pengiriman Anda baru-baru ini untuk APP_NAME. Pengiriman Anda berhasil, tetapi Anda mungkin ingin memperbaiki masalah berikut pada pengiriman Anda berikutnya:
Kepemilikan Notifikasi Push yang Hilang - Aplikasi Anda menyertakan API untuk layanan Notifikasi Push Apple, tetapi kepemilikan aps-environment tidak ada di tanda tangan aplikasi. Untuk mengatasi ini, pastikan ID Aplikasi Anda diaktifkan untuk pemberitahuan push di Portal Penyediaan. Kemudian, tanda tangani aplikasi Anda dengan profil penyediaan distribusi yang menyertakan hak aps-environment. Ini akan membuat tanda tangan yang benar, dan Anda dapat mengirim ulang aplikasi Anda. Lihat "Penyediaan dan Pengembangan" di Panduan Pemrograman Lokal dan Push Notification untuk informasi lebih lanjut. Jika aplikasi Anda tidak menggunakan layanan Pemberitahuan Push Apple, tidak ada tindakan yang diperlukan. Anda dapat menghapus API dari pengiriman selanjutnya untuk menghentikan peringatan ini. Jika Anda menggunakan kerangka pihak ketiga,
Setelah Anda memperbaiki masalahnya, Anda dapat menggunakan Xcode atau Application Loader untuk mengunggah biner baru ke iTunes Connect.
Salam,
Tim App Store
Yang aneh adalah saya pergi ke developer.apple.com -> Certificates, Identifiers & Profiles dan AppId saya masih mengaktifkan Push Notifications. Saya tidak melakukan sesuatu yang berbeda dari yang pernah saya lakukan, jadi saya ingin tahu jika pembaruan Xcode 8 merusak sesuatu. Ada ide?
BTW: Tautan yang mereka masukkan untuk Panduan Pemrograman Pemberitahuan Dorong rusak di email, jadi itu bukan pertanda baik.
Saya juga memiliki masalah yang sama, dan saya yakin Pemberitahuan push dinonaktifkan secara default di Xcode8. Saya tidak menyadarinya. Berhati-hatilah.
sumber
Ada perubahan di Xcode 8, di mana hak Anda tidak lagi berasal dari Pengenal Aplikasi, tetapi dari kemampuan yang dipilih di target aplikasi Anda. Jadi, seperti Unome (OP) mengatakan, Anda harus memverifikasi bahwa Pemberitahuan Push dihidupkan.
Bagi saya, ini bukan tombol "Perbaiki Saya", tetapi saya memiliki dua file hak (satu untuk pengembangan dan satu untuk distribusi). Mengalihkan kapabilitas Push Notifications akan menambahkan
aps-environment
kunci - dengan nilaidevelopment
- ke file hak pengembangan, tetapi tidak akan menambahkannya ke file hak distribusi. Menyalin kunci yang sama ke distribusi berfungsi untuk menghilangkan email peringatan saat mengunggah ke iTunes Connect.Untuk sebagian besar proyek, itu harus cukup untuk mengaktifkan Push Notifications, atau jika sudah aktif tetapi kuncinya tidak ada dalam hak, coba matikan dan hidupkan lagi.
sumber
.entitlements
file saya untuk konfigurasi / skema saat ini, itu selalu digunakanproduction
sebagai fileaps-environment
.production
.development
. Ini akan diubah di ipa saat proyek diarsipkan.Dari catatan rilis Xcode :
Ini adalah perubahan besar karena selalu cukup aneh bahwa hak aps-environment tidak memerlukan plist, tetapi banyak yang lain melakukannya.
Bagi Anda yang tidak ingin hanya menekan "Perbaiki Saya" dan saat ini tidak memiliki file hak, itu hanya file plist yang direferensikan dalam Pengaturan Build proyek Anda di bawah "Penandatanganan Kode"
sumber
Setelah seharian berjuang dengan Xcode 8 kami tidak dapat mengetahui mengapa
aps-environment
pengembangan TIDAK ditambahkan ke build debug kami. Itu hilang dari bagian hak di aplikasi yang dibangun untuk pengujian debug ... meskipun kami telah MENGAKTIFKAN Kapabilitas baru dan file hak ada. Masalahnya adalah file hak harus disetel untuk SETIAP SDK di Xcode Build Settings untuk Debug Entitlements.sumber
Debug
kunci dan menyetelnya untukDebug
>Any SDK
satu, karena yang terakhir digunakan untuk mengganti nilai untuk SDK tertentu.Saya mendapat email yang sama dari Apple menggunakan XCode 7.3.1. Apa yang saya lakukan untuk memecahkan masalah tersebut adalah:
sumber
Jika Anda menggunakan kerangka kerja Firebase dan tidak menggunakan pemberitahuan push, ada dua solusi 1. cukup tahan dengan pesan 'masalah' yang akan dikirim ke seluruh tim Anda setiap kali mengunggah biner. Aplikasi akan tetap diterima sebagai kiriman selama Anda tidak benar-benar menggunakan pemberitahuan, Anda dapat mengabaikan peringatan tersebut. atau 2. lakukan ini: https://stackoverflow.com/a/46802075/7529450 . Ini akan menghapus pemberitahuan email yang mengganggu dan juga diterima sebagai kiriman.
sumber
Secara otomatis mengelola penandatanganan tidak aktif untuk saya, saya memeriksa dan berfungsi dengan baik untuk saya.
sumber
Menggunakan Xcode 9 push Notifications telah diaktifkan.
Saya mencoba menonaktifkan / mengaktifkan kembali kemampuan Pemberitahuan Push . (tidak berhasil)
Saya mencoba menonaktifkan / mengaktifkan kembali Kelola penandatanganan secara otomatis . (tidak berhasil)
Ternyata saya harus menghapus dan menambahkan kembali profil penyediaan saya. ( lihat di sini cara melakukannya ) Anda mungkin harus menonaktifkan / mengaktifkan kembali Kelola penandatanganan secara otomatis setelah lingkungan.
sumber
Bagi saya masalahnya karena ada dua file hak:
Entitlements-Debug.plist
danEntitlements-Release.plist
. Dan hanya satu dari mereka (Debug) yang membutuhkan pengaturan di dalamnya.Mengubah beberapa nilai Build Settings> Signing> Code Signing Entitlements menjadi satu
MyAppName/MyAppName.entitlements
dan kemudian mengaktifkan kembali Capabilities> Push Notifications switcher melakukan trik untuk saya.Semoga membantu.
sumber
Satu opsi lagi yang berhasil: salin-tempel sumber
AppName/Entitlements-Debug.plist
keAppName/Entitlements-Release.plist
.sumber