iOS 7.0 Tidak ditemukan identitas penandatanganan kode

124
  • sertifikat valid
  • xcode 5
  • IOS 7

Kesalahan Tanda Kode: Tidak ada identitas penandatanganan kode yang ditemukan: Tidak ada identitas penandatanganan kode (mis. Sertifikat dan pasangan kunci pribadi) yang cocok dengan profil penyediaan yang ditentukan dalam pengaturan build Anda ("Profil Penyediaan Tim iOS: *") ditemukan. Kesalahan CodeSign: penandatanganan kode diperlukan untuk jenis produk 'Aplikasi' di SDK 'iOS 7.0'

pengguna2849317
sumber
24
Saya menyebutnya mimpi buruk masuk kode apel, saya selalu menyelesaikannya dengan menghapus sertifikat / profil saya, unduh ulang, lalu petakan profil yang benar.
meda
lihat Jawaban SO saya stackoverflow.com/questions/19086395/…
Deepesh
9
Memulai ulang Xcode membantu.
Ronald Randon
2
Memulai ulang Xcode berfungsi untuk saya :)
Hemant Chittora
1
Ketiga restart XCode
Khanh Nguyen

Jawaban:

68

Untuk Sertifikat

  1. Cabut Sertifikat Sebelumnya.
  2. Hasilkan Sertifikat Pengembangan Baru.
  3. Unduh Sertifikat.
  4. Double Click untuk memasukkan KeyChain.

Untuk profil Penyediaan

  1. Buat Baru atau Edit profil Penyediaan yang ada.
  2. Unduh dan pasang.

Untuk BundleIdentifier.

  1. com.yourcompanyName.Something (Letakkan sama seperti di AppId)

masukkan deskripsi gambar di sini

CodeSigningIdentity.

  1. Pilih Profil Penyediaan yang Anda buat.

masukkan deskripsi gambar di sini

Rajneesh071
sumber
4
Terkadang reboot membantu, Ini membantu saya setelah reboot Mac saya.
topeng
1
Anda juga harus memeriksa apakah ada profil penyediaan distribusi dengan ID Aplikasi yang cocok dengan pengenal paket untuk aplikasi tersebut. Setelah saya mendapatkan yang cocok, dialog kirim berhenti memberi saya kesalahan itu.
Chuck Krutsinger
1
Sebelum membuat kembali sertifikat, saya sarankan untuk memastikan Anda memiliki kunci privat dari sertifikat yang Anda coba gunakan.
jjramos
Adakah alasan khusus mengapa kami harus mencabut sertifikat sebelumnya ??
iAviatorJose
43

Perbaikan saya untuk masalah ini adalah:

Xcode> Preferensi. Di Akun, klik ID Apple Anda. Klik Lihat Detail, klik Profil Penyediaan proyek Anda (saya rasa ini membantu) dan klik tombol segarkan di kiri bawah.

christopher_h
sumber
17

Pikir saya akan melengkapi jawaban lain dengan pengalaman pribadi saya sendiri tentang ini.

Baru-baru ini saya memiliki masalah di mana dua target akan dibangun, dan dua akan gagal dengan kesalahan berikut:

Kesalahan Tanda Kode: Tidak ada identitas penandatanganan kode yang ditemukan: Tidak ada identitas penandatanganan yang valid (mis. Sertifikat dan pasangan kunci pribadi) yang cocok dengan ID tim "XXXXXXXXXX" ditemukan. Kesalahan CodeSign: penandatanganan kode diperlukan untuk jenis produk 'Aplikasi' di SDK 'iOS 7.1'

Ini meskipun telah memperbarui semuanya di Xcode dan di Pusat Pengembang iOS .

Petunjuknya adalah bahwa ID tim yang ditampilkan dalam pesan kegagalan versi tentang sudah usang.

Benar saja, membuka project.pbxprojfile Xcode di editor Teks menemukan id tim lama:

D29A93A318AB96440099C177 = {
        DevelopmentTeam = XXXXXXXXXX;
};

Kebetulan, untuk mendapatkan project.pbxprojfile Anda , pilih .xcodeprojfile Anda dan tampilkan konten seperti yang ditunjukkan di sini:

masukkan deskripsi gambar di sini

Mencari pada target Id D29A93A318AB96440099C177, saya dapat melihat bahwa itu cocok dengan salah satu target yang gagal:

targets = (
    F5E8B19A16E64505006F22D4 /* MyTarget1 */,
    93DB2342183F737100BEA69F /* MyTarget2 */,
    D29A93A318AB96440099C177 /* MyTarget3 */,
    D200F4B518AB968A00F58C21 /* MyTarget4 */,
    F5E8B1C016E64505006F22D4 /* MyTarget5 */,
    589FB35119114DED003D9350 /* MyTarget6 */,
);

Dalam kasus ini MyTarget3,. Untuk mengatasinya, pencarian teks sederhana mengganti Id tim lama dengan Id baru yang benar. Masalah terpecahkan.

Untuk meringkas , semoga situasi Anda akan diselesaikan menggunakan jawaban di atas daripada menyelidiki kompleksitas file proyek Xcode. Namun, jika tidak, dan kesalahan menunjukkan ID tim yang tidak valid, maka sebaiknya periksa untuk melihat apakah ID tim itu masih ada.

Max MacLeod
sumber
Ini juga masalah saya. Tidak yakin apakah itu karena saya atau seseorang di tim terdistribusi saya dengan profil, sertifikat, dsb. Saya memasangnya agar git auto menggabungkan file pbxproj dengan buruk sekali. DevelopmentTeam yang saya perhatikan berasal dari dropdown Team di bawah tab General di pengaturan proyek saya. Menghapus sepenuhnya baris itu berhasil untuk saya jika Anda ingin tim disetel ke Tidak Ada.
JoshA
saya sudah memeriksanya, DevelopmentTeam saya benar bagaimana saya mendapatkan id yang baru? penginstalan sertifikat memiliki DevelopmentTeam yang sama dengan yang ada di dalamnya. tolong bantu
9to5ios
Bekerja seperti Mantra. Cukup ganti Id yang ditampilkan dalam kesalahan dengan yang di atasnya.
pelopor69
Dalam kasus saya, saya harus mengklik tombol "Perbaiki" di Target -> Umum -> Identitas
Ohad Schneider
9

Saya memiliki masalah yang sama persis dalam pengembangan. Saya menyelesaikannya dengan

  1. Buka preferensi XCode, lihat detail ID Apple, dan hapus file penyediaan yang mengeluh.
  2. Buka Akses Rantai Kunci, dan hapus sertifikat pengembangan yang terkait dengan file penyediaan yang baru saja Anda hapus.
  3. Di Apple Member Center, unduh file provisi pengembangan yang baru saja Anda hapus secara lokal, klik dua kali file untuk memastikannya muncul di XCode.
  4. Unduh sertifikat pengembangan yang baru saja Anda hapus secara lokal, dan klik dua kali untuk memastikannya muncul di Akses Rantai Kunci.
  5. Sebaiknya pergi sekarang.
EddieHFu
sumber
2
Jawaban ini harus lebih tinggi di halaman.
bkSwifty
8

Saya baru saja mengalami masalah ini dengan Jenkins.

Solusinya adalah menyalin sertifikat dan menempelkannya ke rantai kunci sistem jika tidak Jenkins tidak dapat membaca sertifikat.

Daniel Ryan
sumber
7

Anda tidak perlu menghapus semua profil untuk memperbaiki masalah ini,

Saat melihat profil perangkat saya di Penyelenggara, saya melihat salah satu profil saya tidak valid. Saya kemudian pergi ke halaman Sertifikat Pengembang, Pengenal & Profil dan semua profil aktif, hijau dan terlihat bagus tetapi ketika mengklik edit di salah satu yang menunjukkan tidak valid di perangkat saya, saya melihat bahwa kotak centang di akun terkait tidak dicentang meskipun Pilih Semua dicentang. Saya mencentang kotak untuk mengaitkan profil dengan sertifikat saya, mengunduh Profil dan semuanya telah diperbaiki.

Pada halaman web Profil Anda, klik "Edit" Di halaman web Profil Anda

Anda mungkin melihat bahwa tidak ada sertifikat terkait meskipun "Pilih Semua" dicentang. Edit profil Anda! [] [1]

mj662
sumber
Saya akan menghapus semua profil penyediaan saya dan mulai dari sketsa, lalu saya menemukan jawaban Anda. Sobat yang sempurna Satu hari penuh terbuang percuma karena masalah ini. Terima kasih banyak telah membagikan jawaban Anda.
Nilesh Kumar
4

Bagi saya, mengatur Proyek → Target / [Proyek Anda] → Umum → Tim ke "Tidak Ada" memecahkan masalah.

gklka.dll
sumber
4

Setelah melalui waktu yang sangat lama untuk mencoba menyelesaikan salah satu dari ini, dan saya pasti dapat melihat di mana sebagian besar jawaban ini bisa benar dalam beberapa kasus, situasi saya tidak terlalu aneh.

Saya mencoba menerapkan ke toko aplikasi untuk menguji dengan TestFlight. Pengembang sebelumnya, bukan lagi bagian dari proyek atau perusahaan, telah membuat Sertifikat Distribusi IOS. Apa yang xcode coba katakan kepada saya adalah ya, sertifikatnya ada di pusat anggota, tetapi Anda benar-benar tidak dapat menggunakannya karena itu bukan milik Anda. Saya tidak memiliki kunci pribadi yang diperlukan untuk menandatanganinya dan tidak ada jumlah penyegaran, restart, pencabutan yang akan membantu saya. Anda memerlukan sertifikat pengembang dan distribusi untuk mengunggah ke toko aplikasi.

Solusinya adalah membuat sertifikat distribusi produksi baru di pusat anggota, menggunakan permintaan penandatanganan baru dari rantai kunci saya. Proses ini didokumentasikan dengan baik dan dijelaskan saat Anda membuat sertifikat online. Setelah selesai, segarkan akun Anda di xcode untuk diunduh ke keychain Anda dan Anda akan menjadi emas. Saya harap ini membantu seseorang!

Philip Nelson
sumber
2

ini mungkin terdengar aneh tapi bagi saya bekerja me-restart mac saya .. saya tidak bisa menjelaskan mengapa dan apa yang terjadi tetapi berfungsi sekarang. berharap ini akan membantu seseorang

Silviu St
sumber
2

Saya mencapai utas ini ketika saya menggunakan skrip build baris perintah / jenkins murni dan saya tidak ingin satu pun UI / RDP diatur secara manual untuk lingkungan integrasi.

Setelah beberapa jam, coba selesaikan masalah yang persis sama menggunakan jenkins.
Kuncinya adalah "security list-keychains -s <your_keychain_name>"

--- Ceritanya panjang ---
Saya menggunakan skrip dalam jenkins untuk mengganti pengaturan per proyek (profil penyediaan dan identitas penandatanganan)
Setelah meningkatkan ke Xcode 7, saya harus mengubah skrip tambahkan di atas "list-keychains" setelah "create- gantungan kunci "

Skrip diperbarui di sini .

Bochun Bai
sumber
1

Anda tidak perlu menghapus semua profil Anda. Saya memiliki masalah yang sama dan memperbaikinya dengan menginstal sertifikat yang hilang. Anda mungkin lupa menginstal sertifikat yang diperlukan untuk profil penyediaan yang Anda gunakan untuk penandatanganan kode.

  • pastikan Anda menginstal sertifikat yang diinginkan (pengembangan / distribusi) ke dalam rantai kunci untuk profil penyediaan penandatanganan kode (pengembangan / distribusi).
srinivas.dll
sumber
1

Cobalah untuk mengubah Pengenal Bundel: Proyek -> Target / [Proyek Anda] -> Umum -> Pengenal Bundel

Jika aplikasi diterbitkan di AppStore XCode tidak memungkinkan membuat aplikasi dengan pengenal bundel yang sama.

Vlad
sumber
1

Menargetkan iOS 8 dan 9 pada Xcode 7. Profil pengembangan saya baik-baik saja, saya mendapat kesalahan ini saat mengarsipkan aplikasi untuk diunggah ke app store. Inilah yang saya lakukan:

Xcode> Preferensi> Akun> Lihat Detail. Di samping Distribusi iOS, klik tombol "Atur Ulang". Ini akan membuat profil penyediaan distribusi yang Anda gunakan tidak valid (karena Anda menyetel ulang sertifikat distribusi), jadi edit profil tersebut untuk menyertakan sertifikat yang baru disetel ulang.

Pastikan untuk mengunduh sertifikat distribusi baru dan profil penyediaan distribusi yang baru diedit. Mulai ulang Xcode.

Matthew Quiros
sumber
1

Pastikan sertifikat Anda terhubung dengan kunci pribadi Anda :

Buka akses Keychain, login, Sertifikat . Temukan sertifikat di dalam daftar dan lihat apakah sudah dipasangkan dengan benar dengan kunci pribadi Anda.

Jika sertifikat tidak ditandatangani dengan kunci pribadi, hapus, buka halaman pengembang apel dan buat sertifikat baru. Terkadang perlu mencabut yang lama. Sertifikat baru ini sekarang akan ditandatangani dengan benar dengan kunci pribadi Anda.

Sekarang, saat Anda memiliki sertifikat baru, buat kembali profil penyediaan yang diperlukan yang akan menyertakan sertifikat baru dalam proses pembuatan.

Perhatikan, ketika seseorang dari tim Anda menyetel ulang sertifikat ini dengan kunci pribadinya, masalah yang sama ini dapat muncul lagi selama proses penyegaran. Saya tidak yakin, tetapi tampaknya setiap pengembang dalam tim harus memiliki sertifikat sendiri untuk distribusi.

Prcela
sumber
1

Jelas masalah ini memiliki penyebab yang berbeda. :)

Untuk kasus saya, login akun saya kedaluwarsa ... Saya menyelesaikannya hanya dengan:

XCode -> Preferensi -> Akun -> ID Apple -> Pilih ID terkait dan perbarui log masuk ...

Semoga ini membantu!

RainCast
sumber
0

Buka navigator Masalah dan periksa apakah Signing Identity:ada di Akses Rantai Kunci Anda . Jika tidak, unduh .cerfile dan tambahkan ke rantai kunci.

Petr Syrov
sumber
0

Setelah mencabut rambut untuk waktu yang lama, akhirnya saya menemukan masalah, saya telah memilih sertifikat yang salah saat membuat Profil Penyediaan, Dengan memilih yang benar, Ini membantu saya. Dalam kasus Anda, Jika banyak maka Anda harus mencoba dan memilih satu per satu untuk menyelesaikan masalah ini.

Amit Ajmera
sumber
0

Saya mengalami kesalahan ambigu, "Command / usr / bin / codesign gagal dengan kode keluar 1", ketika saya menyiapkan kotak Jenkins baru untuk iOS build dengan Xcode 7.3, OSX 10.11.4.

Dalam kasus saya, saya memiliki beberapa hal yang benar: 1. Ya, saya telah menambahkan sertifikat saya ke rantai kunci, baik root Apple maupun sertifikat tim. 2. Ya, saya mengunduh profil penyediaan yang benar melalui preferensi xcode. 3. Ya itu bahkan dibangun secara manual di xcode.

Namun, untuk jenkins, mungkin ada masalah cache di xcode. Apa yang berhasil adalah: 1. Keluar dari GUI Xcode. 2. Masuk kembali, dan jalankan build secara manual sekali. 3. Baru setelah itu Xcode akan meminta untuk mengizinkan otorisasi akses rantai kunci. 4. Jenkins memiliki beberapa pengaturan yang mungkin dapat memperbaikinya, tetapi mesin saya aman, jadi saya mengklik 'selalu izinkan xcode untuk mengakses rantai kunci'.

AnneTheAgile
sumber
0

Dengan fastlane terinstal, Anda dapat membuat dan menginstal Development Certificate dengan

cert --development
sigh --development
powtac.dll
sumber