Xcode "için özel anahtar bu mac'ta yüklü değil - dağıtım"


99

Uygulamamı uygulama mağazasına göndermeye çalıştığımda her zaman bu mesajı alıyorum.

İşte mesajın bir resmi:

resim

Birisi bu sorunu çözmeme yardımcı olabilir, böylece uygulamamı mağazaya gönderebilirim.

Yanıtlar:


90

Şu adımları izlemeyi deneyin:

  1. Mevcut iOS Dağıtım Sertifikanızı iOS geliştirici web sitesinden iptal edin.
  2. XCode Tercihleri-> Hesaplar-> Ayrıntıları Görüntüle'ye gidip imzalama kimlikleri listesinin altındaki + işaretini tıklayarak yeni bir iOS Dağıtım Sertifikası oluşturun.
  3. Geliştirici web sitesine geri dönün ve tüm ön hazırlık profillerinizin yeni sertifika ile yapılandırıldığından emin olun. (İşiniz bittiğinde hepsi Aktif olarak listelenmelidir.)
  4. XCode'a geri dönün ve ön hazırlık profilleri listenizi yenileyin.

Seninle aynı sorunu yaşadım ve bu sorunu çözdü.


Teşekkür ederim, çözümünüz günümü kurtardı (Apple'a 4 saatten beri küfrediyordum).
JJ86

Aynı sorunla karşılaşıyorum ve yukarıda önerilen adımlar sorunu düzeltiyor ancak şu anda uygulamayı doğrularken başka bir tanesiyle karşılaşıyorum "paket geçersiz, yeni uygulamalar ve uygulama mağazasına gönderilen güncellemeler herkese açık olmalı" bu?
Maystro

Pek çok kişi bu soruyu zaten sordu: stackoverflow.com/…
Ben Visness

@Fabian Boulegue Oyların bunun en iyi yanıt olduğunu gösterdiğini düşünüyorum. Bunu kabul edildi olarak işaretlerseniz harika olur :)
Ben Visness

Bu cevap olarak işaretlenmelidir. tılsım gibi çalışıyor
batgun

50

Bu, sıfırdan başlamadan benim için çözdü:
1. Özel anahtarları oluşturmak için kullanılan makinede Anahtar Zinciri Erişimini açın
2. Sol tarafta Anahtar Zincirleri-> Oturum Açma ve Kategori-> Sertifikalar'ı seçin
3. iki sertifika iPhone Developer: [geliştiricinizin adı] ve iPhone Dağıtımı: [geliştiricinizin adı]
4. Her ikisini de seçin, sağ tıklayın ve 2 öğeyi dışa aktar'ı seçin ...
5. İstediğiniz bir şifre girin, diske kaydedin ve .p12'yi alın -İmzalamayan diğer makineye
dosya aktarın 6. Dosyayı açın, parolayı girin ve gitmeniz iyi olur.


8
Özel anahtarları oluşturan makineye artık erişimim yoksa ne olur?
aaronsnoswell

2
@aaronsnoswell Şu anda üzerinde çalıştığınız makine için yeni anahtarlar oluşturmanız gerekiyor
Nik

O halde yeni bir tane oluşturmalısınız.
HelloWorld

Özel anahtarı anahtar zincirime aktardıktan sonra hala benim için çalışmadı. Ancak, basit bir yeniden başlatma yapılan o ... çalışmak;)
fredpi

7. Makineyi yeniden başlatın. Yeniden başlatmadığım sürece Anahtar Zincirindeki yeni özel anahtarı görmemiş gibi görünüyor. Sanırım bunun nedeni, onu girişte yüklenmesi gereken giriş anahtar zincirine eklemiş olmanızdır.
TenaciousJay

15

Birkaç günlük test, kontrol, tamir etmeye çalışma ve benzer bir problemden sonra benim için işe yarayan basitçe şuydu:

  1. Xcode'un tercihlerini açın (Hesaplar paneli)
  2. "Sertifikaları Yönet" üzerine tıklayın.
  3. Yeni bir sertifika ekleyin.

Sonra her şey yeniden çalışmaya başladı.

görüntü açıklamasını buraya girin


12

Ben de bunu yaşadım ve süreçle 4 saat mücadele ettim. sonunda şunu yaptım

  1. Anahtar Zinciri Erişimimdeki tüm Özel ve genel anahtarları ve sertifikaları sildim
  2. Tüm Temel Hazırlık profilleri silindi
  3. Tüm AppID'leri sildi - (Muhtemelen bunu yapmam gerekmiyordu, temiz bir sayfa istedim)
  4. Developer.Apple sitesindeki sertifikalarımı sildim
  5. Yeni Wildcard Geliştirme Profili oluşturuldu
  6. Dağıtmakta olduğum Uygulamaya SPECIFIC yeni Profil oluşturuldu (Bu nedenle, AppID'de * yerine uygulama adı vardı)
  7. Web Sitesinden yeni bir geliştirme Sertifikası oluşturdu.
  8. Ara sertifikayı (Dünya Çapında Geliştirici İlişkileri Sertifika Yetkilisi) indirdim çünkü bunu Anahtar Zincirimden de sildiğim için
  9. Sertifika İmzalama İsteği (CSR) oluşturuldu, anahtar zinciri erişimime eklemek için mektuba verilen talimatları uyguladım. ve CSR'yi yükledi.
  10. Sertifika eklendikten sonra, genel ve Özel Anahtarları yeniden adlandırmayı ve bilgi kutusuna yorum ekledim - böylece ne yaptığımı hatırlayabildim.
  11. Dağıtım için 7,9, 10 Adımlarını tekrarlayarak yeni bir Dağıtım Sertifikası oluşturdum, böylece onu App Store'a alabileyim.

Umarım bu, birinin her şeyi silip baştan başlayabileceğinizi bilmesine yardımcı olur. Tüm sertifikaları geçen hafta pullanmaya başlayan olf Macbook Pro'ya yükledim. Bu yüzden geçen hafta yeni bir Mac Air aldım, ancak hangi anahtarları hatırlayamadım ve Geliştirme için 2 set Özel ve Genel ve Dağıtım için 1 setim olduğunu kesinlikle hatırlamıyordum. (1'den fazla dağıtımınız varsa, ek setleriniz olacağına inanıyorum.)

Steve


Bunu XCode 4'te başarılı bir şekilde geçirdiğimi hatırlıyorum. XCode 5'te tüm provizyon profillerini (adım 2) nasıl kaldıracağınızı biliyor musunuz?
Danny

1
Herhangi biri "silme" 1-4 adımlarını gerçekleştirmeden önce, sertifikayı KeychainAccess aracılığıyla, aşağıdaki yorumlardan birinde belirtildiği gibi dışa aktarmaya çalışmanız ve ardından bunları hedef makinenize içe aktarmanız önerilir.
andrewz

4
Ne çözüm. Ben de yeni bir dizüstü bilgisayar almalı mıyım?
2018

5

Aynı sorunla karşılaştım ve Apple'a küfrettikten sonra bunun benim hatam olduğunu anladım.

1.- Go to developer.apple.com / Certificates / Production
2.- Download your certificate

Bu benim için çalıştı, diğer cevapları denedikten sonra teşekkür ederim.


sertifika indirildi ve anahtar zinciri erişimine eklendi. Ama çalışmıyor.
famfamfam

4

Aynı ada sahip birden fazla anahtarınız olmadığından emin olmak için Anahtar Zinciri Erişimi'ni kontrol etmeye değer. Ayrıca, Kod İmzalama sorunlarıyla karşılaştığımda çok sık olarak, fastes çözümü süreci baştan başlatmak oldu (yeni anahtar çiftleri, sertifikalar ve sağlama profilleri oluşturun).

İyi şanslar!


4

Tercihler -> Hesaplar -> Kullandığınız Apple Kimliğini seçin -> "Ayrıntıları Görüntüle…" düğmesini tıklayın -> ardından artı düğmesini tıklayın ve "iOS Dağıtımı" düğmesini seçin. Daha fazla ayrıntı burada .


3

Görünüşe göre bir dağıtım sertifikası oluşturmaya kadar gitmişsiniz, bu nedenle bir noktada bir anahtar çifti oluşturmuş olmanız gerekir. Birden fazla makinede mi geliştiriyorsunuz? Geliştirici profilini sahip olduğu makineden dışa aktarın ve bu makineye alın.


Ayrıca provadan da indirebileceğinize inanıyorum. portalı
El Guapo

Normalde sadece o bilgisayardan geliştiriyorum ... peki geliştirici ve distribütör sertifikamı da aldım belki başka bir şey? Buradaki bilginin
Fabian Boulegue

6
Hayır, özel anahtarı sağlama portalından indiremezsiniz. Gizlidir. Apple'a vermiyorsun.
Jim

2
Sertifika, Apple'ın size verdiği ve "Evet, bu özel anahtar Apple tarafından onaylanmıştır" yazan bir dosyadır. Anahtarın kendisi ayrıdır. O bilgisayarda anahtara sahip değilsiniz, aksi takdirde yanında bir açıklama oku olacaktır. Sertifikanın var olması için bir noktada bu anahtara sahip olmalısınız. Diğer bilgisayarları kullanmıyorsanız ve bilgisayarınızda farklı bir hesaba kurmadıysanız, onu silmiş olmanız gerekir.
Jim

2
Özel anahtara sahip değilseniz ve onu bir yedekten geri yükleyemiyorsanız, yeni bir anahtar çifti oluşturmanız, bunun için bir CSR oluşturmanız, CSR'yi apple'a yüklemeniz, yanıt olarak Apple'ın oluşturduğu yeni sertifikayı indirmeniz gerekir. , yeni bir dağıtım ön hazırlık profili oluşturun ve bu profili uygulamanızı oluşturmak için kullanın. Temel olarak, Apple'ın size başlangıçta verdiği kurulum talimatlarını izleyin.
Jim

2

Çok basit, dağıtım sertifikasını oluşturmak için kullanılan kullanıcı hesabına (belki farklı bir Mac'te) giriş yapın. Anahtar Zinciri Erişimini açın ve özel anahtarını dışa aktarın. Ardından Anahtar Zincirinize kurun.


2

Sorunum, Xcode'un özel anahtar için Erişim kontrol listesinde olmamasıydı. Bunu, yeni bir anahtar çifti oluşturmadan anahtarlık erişiminde düzeltebilirsiniz.

Anahtar zinciri erişimini açın. Sol tarafta oturum açma ve Sertifikalarım'ı seçin. Dağıtım sertifikanızı seçin ve özel anahtarınıza çift tıklayın. Erişim kontrolünü seçin ve listede yoksa listeye Xcode ekleyin.

Xcode'u yeniden başlatın ve yeni bir arşiv oluşturun. Özel anahtarı şimdi bulması gerekir.


1

Aslında xCode'u kapatıp yeniden açtım ve sonra her şey normale döndü.


0

Çözümü buldum:

Şirketinizin bir Company (Enterprise Distribution) .pem ve CompanyEnterpriseDistribution.p12 varsa, bunları da yüklemeniz gerekir.


0

Apple'da bir şirket hesabım var. Sorunu şu şekilde çözdüm:

1) geliştirici web sitesinde Certificates, Identifiers & Profiles
2) altında Provisioning Profiles -> development
3) benim geliştirme Provisioning'e gitti -> edit
4) ardından indirin ve çift tıklayın.


0

Bunu dene..

  • "Sistem tercihlerinizde" "Güvenlik ve Gizlilik" öğesini seçin.

  • Sol alt köşedeki 'Kilitle' simgesine tıklayın.

  • "Her yerden" "Uygulamaların indirilmesine izin ver" ayarını "Mac App store ve tanımlı geliştiriciler" olarak değiştirin.

-O halde inşa etmeyi dene.


0

Bir süre sonra bir uygulamayı güncellemeye çalışanlar için Apple Geliştirme Merkezinde Porvisioning Profilinizi yenilemeniz ve ardından Apple Geliştirme Merkezinizin sol tarafındaki Sertifikalara gitmeniz, dağıtım sertifikasını indirmeniz ve açmanız gerekir. .

Xcode gerisini halleder ve uygulamayı çalıştırmanıza izin verir.

Şerefe!


0

Benim için üretim sertifikamı kurmadım. (Ben zaten geliştirme sertifikası kurdum)

Üretim sertifikasını indirip anahtarlığa yükledikten sonra benim için çalıştı.


0

Bu, sıfırdan başlamadan benim için çözdü:

  1. Başka bir macbook tarafından "CertificateSigningRequest.certSigningRequest" dosyasını yeniden oluşturun.
  2. Sertifikaları Yeniden Oluştur " * Grid Information Technology Co., Ltd"
  3. Temel Hazırlık Profillerini Yeniden Oluşturun

0

Beta iOS uygulamam için geliştirme ipaları oluşturuyor ve dağıtıyorum. İzin verilenler listesine defalarca yeni cihazlar eklemek zorunda kaldım ve bu nedenle birçok sıkıntı yaşadım. Bu sefer böyle bir sorunu ve çözümünü belgeliyor ve paylaşıyorum ...

Geliştirici merkezindeki listeme yeni bir udid ekledim, bir arşiv oluşturdum ve ipa'nın ipa gömülü profilde bulunmadığını gördüm. Bu yüzden, XCode'daki ön hazırlık profillerimi yeniledim (güncellenmiş bir liste almak için) ve bu hata özel anahtarın eksik olmasından kaynaklandı (bu iş parçacığının başlangıcında gösterildiği gibi).

O zaman başka bir arşiv oluşturamadım. Ayrıca, bu, projeyi oluşturmaya çalışırken kod imzalama hataları oluşturdu.

Çok fazla acıdan sonra bunu şöyle düzelttim:

XCode'da Tercihler ... Hesap Sekmesine gidin. Ekle düğmesini (sol ortada) tıklayın ve "iOS Geliştirme" yi seçin. Bu, yeni bir imza kimliği yaratacaktır.

Artık arşivi oluşturmak için yeni ön hazırlık profilini kullanabilmeniz gerekir.

Ayrıca, yapı hataları düzeltilmelidir. Projeye geri dönün, "Genel" sekmesi, "ekibi" seçin ve oluşturmayı yeniden deneyin. Bazı ek izinler iletişim kutuları olabilir. Sorulduğunda "düzelt" veya "her zaman izin ver" i tıklayın.

Not: Üye Merkezi ve Anahtar Zinciri listesi, kimliklerin imzalanması için kopyalarla karışık hale gelecektir, ancak en azından her şey çalışır. Temizlemeyi denemek isteyebilirsiniz ...


0

Yeni bir Dağıtım sertifikası oluşturdum, ardından mevcut ön hazırlık profilimi bu yeni sertifikayı gösterecek şekilde düzenledim, ardından Xcode> tercihler> hesap> ayrıntıları görüntüle bölümünde imzalama sertifikalarımı güncelledim.

bir cazibe gibi çalıştı


0

Başka bir cevabım var (önceki yazıma ek olarak). Bugün, özel anahtarımın süresi doldu (KeyChain Access'e bakarken bulduğum gibi) ve listede yenisi vardı. Nasıl? Idk ... Belki bana sunulan XCode "sorunu düzelt" düğmesini kullanarak veya diğer gönderimde açıkladığım gibi ön hazırlık profilleri için bir güncelleme alarak otomatik olarak yeni bir tane oluşturuldu mu? ...

Her neyse, geliştirme merkezine giriş yaptım, kullanmak istediğim ön hazırlık profilini buldum ve "düzenle" yi tıkladım. Daha sonra "Sertifikalar" ı seçebildim. Aranan kişinin seçilmediğini buldum. Temel hazırlık profilini yeniden oluşturmak için onu seçtim ve "oluştur" u tıkladım. Sonra onu indirebildim. Dosyayı XCode dock simgemin üzerine sürükleyip bıraktım. Bu onu düzeltti!


-2

Bu, Mac'inizi biçimlendirdiğiniz ve yeniden yüklediğiniz veya yeni bir Mac'ten geliştirdiğiniz için gerçekleşecektir.

Yukarıdakileri yapamıyorsanız ve eski sertifikanızın ve profillerinizin eski Mac'ten dışa aktarılmasını istiyorsanız

joker kart provizyon profillerini apple geliştirici merkezinden kaldırmanız gerekecek ve ayrıca sertifikalardan eski olanları sadece genel geliştirme ve üretim sertifikalarını kaldırmanız gerekecek.

daha sonra yenilerini oluşturmanız ve apple'a yüklemeniz gereken uygulama için yeni ön hazırlık profilleri oluşturmanız gerekecektir.

şimdilik tüm ön hazırlık profillerini silmenize gerek yoktur, ancak kesinlikle onun için oluşturmadığınız uygulamalar için yenilerini oluşturmanız gerekecektir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.