Sejak kemarin saya mendapatkan kesalahan berikut ketika mencoba menjalankan aplikasi di perangkat saya: "Profil penyediaan yang valid untuk eksekusi ini tidak ditemukan.". Ini setelah memperbarui ke Xcode 10. Membangun dengan Xcode 9 minggu lalu bekerja tanpa masalah.
Saya sudah memeriksa diskusi lain tentang kesalahan, tetapi tidak ada solusi yang berfungsi.
Masalahnya tidak terbatas pada satu proyek yang telah saya kerjakan karena mempengaruhi beberapa dari semua tim penandatangan yang berbeda.
Sejauh ini saya sudah mencoba yang berikut ini:
Proyek pembersihan
Membersihkan data yang diturunkan
Menghapus instalan Xcode, menghapus semua preferensi dan file yang terkait dengannya.
Menginstal Xcode pada Mac yang sama sekali berbeda
Menguji dengan berbagai perangkat
Menonaktifkan perangkat di profil pengembang dan membiarkan Xcode mengaktifkannya lagi.
Menghapus semua sertifikat di portal pengembang dan membuatnya kembali
Hapus centang dan periksa kembali "Kelola penandatanganan secara otomatis"
Membuang profil bawaan dan membiarkan Xcode membuatnya kembali
Membuat profil penyediaan manual di profil pengembang
Proyek tidak mengandung tes sehingga tidak ada masalah dengan pengaturan penandatanganan yang salah pada target itu. Tanggal / Waktu diatur ke Otomatis
Satu hal yang perlu diperhatikan adalah bahwa tidak ada Profil Penyedia yang terdaftar di sini, kecuali untuk manual yang saya buat: https://developer.apple.com/account/ios/profile/
Saya berharap xcode yang dihasilkan akan muncul seperti yang terjadi pada semua klien lain
Di bawah ini adalah pengaturan penandatanganan yang saya gunakan saat ini
Saya belum mencoba menurunkan versi Xcode ke versi yang lebih lama untuk melihat apakah itu berhasil. Selain itu saya tidak tahu harus mencoba apa selanjutnya.
missing provisioning-profile
.Jawaban:
Saya berjuang dengan ini hari ini, itu sangat frustasi. Untuk saat ini, cukup masuk ke
"File"
>"Project Settings..."
(atau dalam beberapa kasus"Workspace Settings..."
) dan kemudian pilih"Legacy Build System"
dari"Build System"
dropdown.sumber
@Stephen tks ini diselesaikan untuk saya. Saya hanya perlu pergi -> File -> WorspaceSettings -> Build Settings (ubah ke "Legacy Build System")
sumber
[Sunting] Catatan 2020: Saya dulu secara manual menandatangani proyek ini. Dalam proyek di mana saya secara otomatis masuk, saya tidak pernah mengalami masalah ini. [/ edit]
Saya memiliki masalah yang sama, dan menghabiskan berjam-jam mencari jawaban, menghapus profil, proyek pembersihan, dan sebagainya.
Sudahkah Anda mendistribusikan aplikasi Anda? Anda perlu beralih kembali ke profil pengembang Anda, tetapi tidak secara umum di bawah pengaturan proyek, tetapi di pengaturan Bangun .
Di bawah Penandatanganan , lihat Identitas Penandatanganan Kode Anda .
Pastikan Debug dan Rilis Anda mengatur Pengembang iOS Anda , dan bukan Distribusi iOS ; atau profil Penyedia Pengembang iOS Anda, jika tidak disetel ke nilai otomatis.
Hal yang sama berlaku dengan Provisioning Profile. Itu harus menjadi profil pengembangan Anda, dan bukan profil distribusi Anda.
Semoga ini akan membantu pengembang masa depan yang membutuhkan.
sumber
Saya sudah mencoba semua solusi di atas.
Namun, dalam kasus saya, setelah berjam-jam sakit kepala itu karena Proyek Uji tidak memiliki akun yang valid untuk penyediaan penandatanganan. Setelah saya memilih tim untuk penyediaan dalam Proyek Uji dengan penandatanganan otomatis dikelola. Masalah ini hilang.
sumber
Gunakan folder build bersih (perintah + shift + K) dan bangun kembali aplikasi dapat segera memperbaiki masalah ini. Namun, waktu pembuatan akan meningkat karena Anda telah membersihkan folder build.
sumber
Jadi ini tidak akan menjadi masalah bagi semua orang, tetapi saya pikir saya tetap akan mempostingnya di sini karena sepertinya tidak ada jawaban yang berkaitan dengannya.
Dalam kasus saya, saya sedang mengerjakan sebuah aplikasi yang sedang dikembangkan di ReactNative, masalah saya adalah bahwa meskipun penandatanganan saya benar pada target aplikasi utama, target pengujian tidak memiliki penandatanganan penandatanganan yang diterapkan.
Untuk beberapa alasan React Native mengharuskan target aplikasi dan target pengujian Anda ditandatangani untuk menginstal aplikasi pada perangkat.
Itu menentukan ini dalam dokumentasi resmi tentang membangun untuk perangkat namun satu-satunya contoh yang pernah saya lihat di mana target pengujian dibangun bersama aplikasi untuk apa pun selain pengujian.
Untuk menandatangani target pengujian Anda, buka pengaturan proyek Anda dengan membuka navigator proyek (⌘1) dan pilih proyek Anda di bagian atas.
Di dalam editor utama pilih target aplikasi utama Anda di bawah Target (harus memiliki nama yang sama dengan proyek Anda) dan pastikan penandatanganan itu benar, lalu pilih target pengujian (kemungkinan tepat di bawah target aplikasi utama Anda, itu harus nama yang sama dengan Tes ditambahkan) dan pastikan ditandatangani dengan cara yang sama.
Bangun kembali aplikasi Anda dan sekarang aplikasi akan berhasil diinstal.
Penghargaan untuk ini diberikan kepada Leo Lei, jawabannya di sini menyelamatkan saya dari sakit kepala: https://stackoverflow.com/a/48657358/732844
Selain itu, jika ada yang tahu mengapa reaksi asli memerlukan target pengujian Anda dibangun di samping target aplikasi Anda, bisakah mereka memberi tahu saya? Satu-satunya alasan yang dapat saya pikirkan adalah untuk merampingkan antarmuka sehingga bereaksi dapat membangun satu aplikasi dan melakukan keduanya berjalan dan pengujian tanpa perlu membangun kembali tetapi saya hanya menebak dengan yang itu.
sumber
Dalam kasus saya, berikut adalah langkah-langkah yang saya selesaikan:
~/Library/MobileDevice/Provisioning Profiles/
Alasan untuk mengambil langkah-langkah di atas adalah untuk menghapus profil penyediaan lama yang mengacaukan proses pembangunan.
sumber
Untuk tim kami, tidak ada yang membantu. Kami telah menghabiskan beberapa hari dan mencoba setiap langkah yang disebutkan di sini dalam jawaban dan komentar. Kami mencoba dengan XCode 10 dan bahkan XCode 9.2 di App, yang ada di App store sejak bertahun-tahun.
Masalah dimulai setelah memutakhirkan ke MacOS Mojave. Sayangnya, kembali ke HighSierra tidak membantu saat itu.
Setidaknya kami dapat mengirim lagi ke App store setelah kami membuat sertifikat baru dan profil penyediaan. Tetapi kami masih tidak dapat lagi menguji Aplikasi kami dalam mode rilis di perangkat nyata, yang diperlukan untuk menguji pembelian InApp.
Singkatnya: Pengarsipan dan pengiriman berfungsi dengan baik, berjalan di perangkat nyata tidak!
Beberapa pengembang, beberapa perangkat, macbook, versi XCode ....
Pada akhirnya kami harus mengubah AppID agar dapat lagi menguji pada perangkat nyata.
Untuk itu kami menjalankan dua proyek berbeda sekarang: satu untuk pengiriman ke TestFlight / AppStore dengan AppID asli dan satu untuk tujuan pengembangan dengan AppID lain.
Meskipun ini hanya terjadi pada SATU Aplikasi tertentu dari perusahaan kami dan tidak semua yang lain, kami berharap untuk mengalami masalah yang sama di masa depan karena semuanya menjadi lebih buruk dengan alat pengembangan Apple ...
sumber
Saya mengalami masalah ini terjadi di Xcode 10.3 setelah saya beralih ke target uji unit XCTest saya kemudian kembali ke target waktu proyek.
Ternyata saya memiliki Tim yang berbeda yang dipilih dalam profil penyediaan saya untuk setiap target.
Untuk memperbaikinya:
Bersihkan Bangun Folder
Pastikan semua target Mei menggunakan Tim yang sama. Lihat Penandatanganan Profil di bawah tab umum.
Jika tidak menggunakan Tim yang sama untuk semua target, bersihkan sebelum beralih ke build target
tim yang berbeda dipilih.
sumber
Pastikan profil penyediaan berasal dari tim yang sama di target Anda dan targetTests Anda.
sumber
Dalam kasus saya, waktu tanggal Perangkat diatur ke tanggal di masa mendatang. Mengubah pengaturan tanggal ke "otomatis" memperbaiki masalah.
sumber
Saya berjuang dengan masalah yang sama dan solusi dalam kasus saya adalah masuk ke akun pengembang. Setelah memperbarui ke Xcode 10, semua akun keluar.
Gunakan menu "Xcode -> Preferensi ... -> Akun" dan pastikan semua akun yang Anda gunakan masuk sehingga profil penyediaan dapat diakses.
sumber
Saya telah mengikuti semua langkah di atas tetapi pada akhirnya tidak berhasil. Saya dibuat duplikat Target dan itu berfungsi dengan baik. Saya tidak tahu apa yang salah mungkin masalah memori cache
sumber
Apakah Anda mungkin mengubah perangkat yang sedang berkembang? Itu terjadi pada saya ketika saya membeli iPhone baru dan memberikannya nama yang sama dengan perangkat saya sebelumnya. Namun bangunan yang bersih memperbaiki masalah ini.
sumber
Butuh waktu lama, dan kami melakukan semua solusi di atas dan mereka tidak berfungsi sama sekali sehingga tim kami memutuskan untuk menghapus
Pod
file dan menjalankannyapod install
lagi. akhirnya, OTA kami mengunggah ipa yang diinstal pada perangkat pengguna. solusi terbaikbersih
project menu > Product > Clean Build Folder
dan/Users/{you user name}/Library/Developer/Xcode/DerivedData
buka direktori proyek Anda dan hapus
Podfile.lock
,Pods
folder,pod_***.framework
lari
pod install
lagiSelesai
sumber
Saya memiliki kasus di mana aplikasi saya akan digunakan untuk iPhone saya tetapi tidak untuk jam tangan saya. Menyebarkan ke arloji akan memberikan "Profil penyediaan yang valid untuk eksekusi ini tidak ditemukan." kesalahan. Ini dengan XCode Versi 11.2.1 dan menggunakan akun pengembang gratis.
Inilah yang saya lakukan untuk menyebarkannya ke arloji saya:
1) Saya menghapus profil penyediaan saya di XCode. Saya melakukan ini dengan pergi ke Window -> Devices And Simulator. Kemudian Klik kanan pada nama iPhone dan pilih "Tampilkan Profil Penyedia". Dari sana saya bisa menghapus file
2) Pada layar Perangkat dan Simulator saya juga menghapus aplikasi saya dari bagian "Aplikasi yang Diinstal".
3) Melakukan "clean build folder" (Produk -> Clean Build Folder)
4) Dalam "Bangun Pengaturan" -> "Bagian penandatanganan" Saya memastikan setiap target (iPhone, Tes dan Arloji) memiliki pengaturan yang sama (tim pengembangan, gaya penandatanganan kode, profil penyediaan diatur ke dll otomatis).
5) Memastikan direktori ~ / Library / MobileDevice / Provisioning Profiles kosong.
6) Cabut telepon dari komputer
7) Reboot komputer, telepon dan jam tangan
8) Telepon dicolokkan kembali ke komputer, dan pergi melalui "percaya mesin ini" meminta di telepon dan menonton.
9) Berlari aplikasi. Berhasil!
sumber
Hari ini saya mengalami kesalahan yang sama saat memasang aplikasi ke perangkat saya. Masalahnya terjadi setelah saya memperbarui ke xCode 11.4 baru.
Apa yang saya lakukan untuk memperbaiki masalah:
sumber
Dalam kasus saya, di mana tidak ada yang membantu, saya melakukan hal berikut:
Sebelum ini saya telah mencoba setiap langkah yang disebutkan di sini. Tetapi hanya ini yang membantu.
sumber
Bagi saya, bahkan Anda, sertifikat distribusi dan profil penyediaan tersedia untuk Xcode, memilih penandatanganan mengelola otomatis selama proses distribusi membuatnya gagal. Saya melakukan yang berikut. Seperti yang disebutkan sebelumnya saya membuat sertifikat distribusi dan profil penyediaan baru dan kemudian selama proses distribusi secara manual memilih sertifikat dan profil penyediaan dan Voilaaaa. Juga memastikan saya pada versi terbaru 10.1.
sumber
Tampaknya Apple memperbaiki bug ini di Xcode 10.2 beta 2 Release.
https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_beta_2_release_notes
Rilis Xcode 10.2 beta 2 dapat diunduh di sini: https://developer.apple.com/download/
sumber
Anda hanya perlu mengubah Tim Anda. Dalam kasus saya itu berhasil
sumber
Setelah saya lelah sebagian besar solusi, saya menemukan apa yang membuatnya bekerja tanpa masalah bagi saya, itu diselesaikan dengan pergi ke
developer.apple.com
saataccount
ituCertificates, identifiers & profiles
dan saya mengklikAll
tautan di bawahDevices
dan kemudian menambahkan perangkat baru.maka Anda perlu mengatur nama perangkat, dan uuid, dan setelah menyimpannya. Pergi ke xcode dan bersihkan cache, build, dan semua berfungsi dengan baik.
Catatan 1: pastikan tim Anda benar.
Catatan 2: Anda bisa mendapatkan uuid dengan menghubungkan perangkat ke perangkat mac Anda, dan mengklik iTunes, dan menekan label keamanan, Anda akan melihat UUID.
Jawaban Ini Yang membantu juga.
sumber
Saya sudah mencoba semua jawaban di atas dan tidak berhasil. Setelah itu saya me-restart iPhone saya dan masalah sepertinya hilang. Saya tahu ini sangat bodoh tetapi berhasil. Jawaban di atas kemungkinan besar menyelesaikan masalah tetapi jika tidak mencoba untuk me-restart perangkat iOS Anda.
sumber
Pastikan Anda:
1) Memiliki profil penyediaan terdaftar untuk perangkat Anda.
2) Perangkat harus ditambahkan ke profil Pengembangan dan diperbarui.
Jika Anda masih mengalami masalah, periksa pengaturan build target Anda.
Pastikan Anda:
1)
CODE_SIGNING_REQUIRED
inUser-Defined
diatur keYES
.2)
Signing
Opsi cek sudah benar. Jika masalah berlanjut, beralihlah ke pengaturan Manual alih-alih secara otomatis.sumber
Mengalami masalah yang sama, kami sudah beberapa konfigurasi dalam proyek Xcode, katakanlah mari
Debug-Staging
,Debug-Production
. Kami kemudian menyatukan itu dan hanya menggunakan satu konfigurasiDebug
. Tapi yang lama (tidak ada lagi) terjebak dalam skema untuk fase jalankan, jadi setelah Anda mencoba menjalankan, Xcode menunjukkan pesan ini kepada Anda. Yang masuk akal sebagai profil penyediaan diatur dalam pengaturan membangun berdasarkan konfigurasi.Jadi skema run tampak seperti ini:
Sementara konfigurasi proyek diatur seperti ini.
Mengubah skema untuk menggunakan konfigurasi yang masih tersedia dalam proyek itulah yang memperbaiki masalah ini bagi saya.
sumber
Saya memiliki masalah yang sama (XCode 11) dan tidak ada yang berhasil apa yang ditulis di sini.
Masalah saya adalah saya memiliki iOS Beta (13.3) di Ponsel saya. Setelah mengembalikan bahwa semuanya berfungsi dengan baik lagi.
Ide: Mungkin perangkat ini juga menyimpan beberapa informasi tentang profil penyediaan, sehingga pengaturan ulang pabrik dari ponsel mungkin juga memperbaikinya?
sumber
Bagi saya itu berfungsi untuk menghapus Kemampuan dan kemudian menambahkannya kembali.
sumber
Saya melakukan yang berikut:
Ini sangat aneh tetapi itu berhasil untuk saya, mungkin bekerja untuk orang lain dan menyelamatkan frustrasi.
sumber
Akhirnya, saya menemukan apa yang terjadi ... hampir memakan waktu 2 jam
Kasus saya adalah, tanggal telepon saya salah. Saya lupa saya mengubah tanggal ponsel saya. Saya kira itu membuat semua profil penyediaan saya kedaluwarsa ...
Jadi, jika Anda sudah mencoba semua jawaban itu tetapi tidak ada yang berhasil. Buka PENGATURAN, periksa tanggal telepon Anda.
sumber