Saya memiliki aplikasi untuk pengiriman ketika ditolak dan saya menerima pesan
Hak Pemberitahuan Dorong Hilang - Aplikasi Anda tampaknya mendaftar pada layanan Pemberitahuan Dorong Apple, tetapi hak tanda tangan aplikasi tidak termasuk hak "lingkungan aps". Jika aplikasi Anda menggunakan layanan Pemberitahuan Push Apple, pastikan ID Aplikasi Anda diaktifkan untuk Pemberitahuan Push di Portal Penyediaan, dan kirim kembali setelah menandatangani aplikasi Anda dengan profil penyediaan Distribusi yang mencakup hak "lingkungan-aps".
Saya memeriksa ketentuan ad-hoc saya dan di sana saya menemukan aps-environment dan produksi, tetapi ketika saya membuka ketentuan distribusi saya, saya tidak menemukan itu.
Apakah ini penyebab pesan kesalahan dan penolakan apel ini, bagaimana saya bisa memperbaikinya?
sumber
pastikan notifikasi push ID Anda diaktifkan di sisi produksi
seperti yang terlihat dalam gambar
dari bagian produksi buat dua sertifikat dengan id Anda (push notification diaktifkan)
App Store dan sertifikat Ad Hoc
Sertifikat Layanan Pemberitahuan Push Apple SSL (Kotak Pasir)
Dari bagian Distribusi, buat profil App Store dengan id Anda
saat Anda mengunggah nampan Anda, Anda harus memeriksa profil penyediaan apa yang digunakan dan memiliki banyak hak
ini semua kasus menyebabkan masalah ini berharap ini bisa membantu Anda
sumber
Dalam XCode 8 Anda perlu mengaktifkan push di tab Capabilities pada target Anda, selain mengaktifkan segala sesuatu pada ketentuan dan sertifikat: Xcode 8 "hak aps-environment hilang dari tanda tangan aplikasi" saat mengirim
Posting blog saya tentang ini di sini .
sumber
Saya mendapat pesan ini karena alasan yang berbeda - saya mengirimkan aplikasi melalui Xcode tanpa terlebih dahulu membuat Profil Distribusi App Store khusus untuk aplikasi tersebut. Saya percaya Xcode secara otomatis menggunakan profil wildcard App Store jika Anda menginstalnya. Tetapi aplikasi yang menggunakan Pemberitahuan Push memerlukan profilnya sendiri.
Cara mengatasinya adalah membuat profil Distribusi App Store baru untuk aplikasi tersebut. Kemudian Anda mengunduhnya, seret ke Xcode, dan modifikasi proyek Anda Membangun Pengaturan> Penandatanganan Kode> Lepaskan untuk menggunakan profil baru.
sumber
Sebagai lanjutan dari jawaban yang diberikan oleh @Vaiden, di Xcode 8 Anda dapat mengatasi masalah ini dengan memilih target dan mengklik "Perbaiki masalah". Tentu saja, Anda masih perlu mengatur pemberitahuan push di portal Pengembang Apple (Anda dapat sedikit menyederhanakan prosesnya dengan menggunakan opsi "Kelola penandatanganan otomatis" yang baru, yang menghemat kerumitan mengunduh profil penyediaan).
sumber
Bagi mereka yang mengalami masalah ini yang sebenarnya menggunakan Pemberitahuan Push di aplikasi mereka:
Cert push kami baru-baru ini akan kedaluwarsa, jadi kami membuat sertifikat push dev / prod baru dengan cara standar yang digariskan oleh Apple (saya tidak akan membahas detailnya di sini, ada banyak info tentangnya di seluruh web saat memperbarui) sertifikat push Anda untuk satu tahun penggunaan lagi).
Namun setelah melakukannya, masalah dalam pertanyaan ini muncul. Apa pun yang kami lakukan, kami menerima email ini dari Apple setelah mengirimkan aplikasi kami. Ketika kami memeriksa pengaturan Profil Penyediaan Distribusi kami di Apple Member Center, semuanya tampak baik-baik saja (Push diaktifkan untuk ID Aplikasi kami untuk kedua prod / dev, dan profil penyediaan distribusi kami masih terhubung ke ID Aplikasi ini, kami benar-benar baru saja membuat sertifikat push baru untuk tahun berikutnya seperti praktik standar).
Akhirnya, inilah yang akhirnya memecahkannya untuk saya:
Saya tahu ini tidak sedetail sebagaimana mestinya seperti memiliki tangkapan layar, saya akan mencoba memperbaruinya dengan tangkapan layar ketika saya bisa, tetapi untuk saat ini saya sedang dalam krisis waktu sekarang dan ingin mendapatkan intisari dari apa yang saya lakukan di luar sana. Ada juga kemungkinan besar bahwa beberapa atau sebagian besar langkah yang saya uraikan tidak perlu, saya menempatkan mereka di sini karena saya melakukannya dan mereka mungkin mengarah ke solusi akhir.
sumber
periksa Id Aplikasi Anda Diaktifkan Push atau tidak pada developer.apple.com di Portal Provisioning iOS Jika Tidak Diaktifkan, konfigurasikan Sertifikat SSL Push Anda untuk Id Aplikasi Anda, unduh, dan Instal Ulang di Gantungan Kunci Anda Sekali lagi Unduh Unduh Profil Distrubution Anda instal di Liabrary Xcode Anda
sumber
Saya juga menghadapi masalah ini bahkan saya tidak menggunakan pemberitahuan push sama sekali di aplikasi saya. Membuat profil penyediaan baru juga tidak berfungsi untuk saya. Apa yang saya lakukan adalah: -
1. Buat sertifikat baru yang segar hanya untuk Ad hoc & App Store.
2.Kemudian buat profil distribusi dengan sertifikat ini dan integrasikan profil dengan Xcode.
Kemudian bangunan yang baru dikirim dengan profil ini disetujui tanpa peringatan apa pun.
sumber
Dalam kasus saya, bahkan saya membuat myapp.profile dan mengaturnya dalam xcode secara manual, dan ketika saya memilih "show in finder" dan menemukan embedded.mobileprovision dan memeriksa untuk memastikan aps-environment ada dalam file tersebut, kesalahannya adalah masih di sana.
Saya kemudian pergi ke pusat pengembang dan menemukan bahwa status XC: myapp.profile tidak valid. Saya memperbaruinya dan menginstal XC: myapp.profile dan bekerja dengan baik.
Saya pikir xcode sedang mencoba mengelola profil dan Anda perlu memeriksa profil penyediaan ketika Anda mengirimkan biner Anda untuk menyimpan, dan memastikan itu adalah yang benar. Dan menurut jawaban lain itu bisa disebabkan karena berbagai alasan sehingga bisa sangat menyebalkan.
MEMPERBARUI:
Setelah Anda masuk dengan profil yang diunduh dan mengonfirmasi bahwa
aps-environment
ada di sana ketika Anda mencoba mengirimApp Store
, Anda harus dapat mengubah profil dan entitas penandatanganan kode menjadi otomatis daniOS Developer
. Semoga bisa ditingkatkan di Xcode 7.sumber
Inilah yang diperbaiki untuk saya. (Saya sudah mencoba mengaktifkan / menonaktifkan kemampuan, membuat ulang profil penyediaan, dll).
Di tab Bangun Pengaturan , di Kepemilikan Penandatanganan Kode , file .entitlements saya tidak ditautkan untuk semua bagian. Setelah saya menambahkannya ke bagian Any SDK, kesalahan telah diatasi.
sumber
Untuk mengatasi ini untuk aplikasi 'dikeluarkan' expo, saya pergi ke tab kapabilitas, mengaktifkan push, lalu menonaktifkannya lagi. Ini menghapus pengaturan 'hak' APNS dari file .entitlements.
sumber
Saya memiliki masalah yang sama dan solusi saya adalah menambahkan hak pemberitahuan push dari Target -> Kemampuan.
sumber
Ini terjadi pada saya tiba-tiba karena profil distribusi aplikasi saya telah kedaluwarsa. Xcode mulai menggunakan profil wildcard sebagai gantinya, yang tidak memiliki hak pemberitahuan push diaktifkan. Saya tidak menerima peringatan apa pun. Cara mengatasinya mudah; Saya hanya perlu membuat profil distribusi lain untuk aplikasi saya di Pusat Anggota Pengembang Apple, mengunduhnya, dan klik dua kali untuk menginstal di Xcode.
sumber
Ada beberapa saran yang sangat bagus di sini.
Mengacu pada tangkapan layar terakhir yang disediakan Mina, setelah awalnya mengarsipkan aplikasi saya, profil penyediaan yang disebutkan saat mengunggah berisi wildcard (XC. *). Ini salah.
Butuh upaya yang cukup besar untuk menyelesaikan ini. Saya harus melakukan kombinasi saran yang diberikan Simon Woodside & Mina Fawzy.
Jika Anda memiliki sertifikat dan profil penyediaan yang ada terkait dengan proyek Anda, sekarang saat yang tepat untuk menghapus semuanya secara lokal, dan mencabut semuanya dari jarak jauh. Beri diri Anda awal yang baru.
Saran rinci Mina Fawzy sangat bagus. Melakukan saran Mina, jika dilakukan dengan benar, akan menjagamu secara online.
Masukkan saran Simon. Dua hal yang perlu saya periksa di dalam proyek saya. Menggunakan XCode, buka di sini:
PROYEK -> PENGATURAN BUILD -> PENANDAAN KODE
Tinjau properti Penandatanganan Identitas dan properti Profil Penyedia . Pastikan Anda mengatur kedua properti itu dengan nama proyek Anda. Jangan izinkan XCode memilih secara otomatis untuk Anda, dan jangan gunakan identitas penandatanganan kode generik (mis. Pengembang Iphone).
Pastikan Anda benar-benar dapat menginstal aplikasi ke perangkat Anda sebelum memutuskan untuk mengarsipkan.
sumber
Masalah terbesar yang saya miliki setelah mengaktifkan
Push Notification
dariCapabilities
dan membuat ulang semua sertifikat adalah bahwa nama Target dan nama folder tempat disimpan proyek terdiri dari 2 string yang dipisahkan oleh ruang. Setelah menghapus semua ruang bekerja dengan baik!sumber
Saya mempunyai masalah ini karena file hak saya salah karena pengeditan manual sebelumnya. Saya menghapus sintaks entri kepemilikan yang diformat dengan salah dan kemudian saya dapat mengklik "perbaiki" pada tab kemampuan dan Xcode menambahkan kepemilikan ke file saya.
Berikut adalah contoh file hak yang diformat dengan benar ("
Runner.entitlements
"):sumber
FIX IDEA Hai teman-teman jadi saya telah membuat aplikasi dan tidak menggunakan fungsi push notification tetapi saya masih mendapat email. Setelah memeriksa sertifikat, id dan profil pengidentifikasi bundel yang saya gunakan untuk membuat aplikasi saya di apple store terhubung di portal pengembang apple saya menyadari bahwa pemberitahuan push dihidupkan.
Yang harus Anda lakukan adalah:
pergi ke situs login pengembang apple di mana Anda dapat mengelola sertifikat Anda juga 2. pilih "Sertifikat, ID dan Profil" Tab di sebelah kanan 3. sekarang pilih "Identifiers" 4. dan bundel id dari daftar ke 5. kanan sekarang gulir ke bawah sampai Anda melihat pemberitahuan push 6. matikan 7. arsipkan bangunan Anda dan unggah kembali ke Apple Store Connect
Semoga ini bisa membantu!
sumber