Xcode bana şu mesajı verdi:
Yüklü uygulama bulunamadı Yükleme işleminin başarılı olduğu iddia edildi, ancak uygulama cihazda bulunamadı. bundleId = (boş)
Kapsülleri kullanmaya yeni başladım.
Bunu nasıl düzeltirim?
Xcode bana şu mesajı verdi:
Yüklü uygulama bulunamadı Yükleme işleminin başarılı olduğu iddia edildi, ancak uygulama cihazda bulunamadı. bundleId = (boş)
Kapsülleri kullanmaya yeni başladım.
Bunu nasıl düzeltirim?
Yanıtlar:
XCode 11 Beta 4 aracılığıyla iOS 13 üzerinde bir Cordova uygulamasını test ederken de aynı sorunla karşılaştım. Eski sistem aracılığıyla derleme bunu çözdü (Dosya> Çalışma Alanı Ayarları ...> Sistem Oluştur> Eski Yapı Sistemi).
Umarım yardımcı olur
Bu bir kod imzalama sorunudur. Xcode 11, sertifikalarınıza ve profillerinize otomatik olarak ekledikleri geliştirme ön hazırlık profilinize "Apple Geliştirme" sertifikasını eklemenizi gerektirir. Bu sertifikayı profilinize ekleyin, geliştirme profilinizi ve vwala'yı yeniden indirin.
Xcode 11 beta 5'te de aynı hatayı aldım. Uygulamayı yükleyemedim. Hatta uygulamayı App Store Connect'e yükledim, ardından TestFlight ile yüklemeyi denedim, ancak uygulama indirildikten sonra yüklenemedi, çok garip. App Store Connect'te hata yok. Simülatör ile uygulamayı çalıştırarak sorunu buldum. Simülatörde uygulamayı çalıştırdıktan sonra, Xcode bana ayrıntılı bir hata mesajı verdi. Benim durumumda, aynı Paket Kimliğine sahip birden çok çerçevem vardı.
.intentdefinition
dosyayı değiştirdiğinizde, tüm BundleID'leri tüm uzantının Info.plist dosyalarına ekler. Sadece her birinin sadece birinin benim için çözdüğünü kontrol
Aynı hatayı aldım, ancak yukarıdaki çözümlerden hiçbiri benim için işe yaramadı.
Benim durumumda, ücretsiz bir Apple geliştirici hesabı kullanıyorum ve 4. bir uygulamayı yüklemeye çalıştıktan sonra bu hatayı aldım. Ücretsiz hesaplar için yükleme sınırı 3'tür. Zaten sahip olduğum 3 uygulamadan birini sildim ve yükleme beklendiği gibi çalıştı.
Aynı hatayı aldım:
Yüklü uygulama bulunamadı Yükleme işleminin başarılı olduğu iddia edildi, ancak uygulama cihazda bulunamadı. bundleId = (MY_BUNDLE_ID) "ancak MY_BUNDLE_ID yerine" boş
Bu hatayı Xcode11 güncellemesinden sonra aldım
Çözüm:
Proje ve Proje Testlerimde farklı geliştirme ekibi vardı. Projenin Sahibi Ekibi, Proje Testlerinin Kişisel Ekibi vardı
Ve Xcode arayüzüyle takımı sahibininkine çevirme fırsatım olmadı. Bu yüzden derleme ayarlarında yapıyorum - ekibime yeni girdim (sertifikaları yönetmeyi otomatikleştir de etkinleştirildi).
Evet, Xcode UI'de (kırmızı etiket) bir hata görünüyor, ancak gerçek cihazlara yüklenebildi.
Benim durumumda, iOS 13 beta ile Xcode 11 GM seed kullanıyordum ve "Otomatik" başarısız olduğu için manuel (dağıtım) kod imzalamam vardı. Ekip temsilcimin kullanıcı "Yönetici" rolüne izin vermesini sağladım, Apple Developer's portalına girdim ve "Xcode 11" i açıkça belirten onay kutusunu işaretlemek için "geçersiz" provizyon profillerini düzenledim. Profili indirdikten sonra ekip temsilcim rolümü tekrar "üye" konumuna getirdi ve her şey yolunda gitti.
Xcode 11 (11a420a)
Benzer bir sorunla karşılaştım, yukarıdaki tüm çözümleri denedim (örn. Mirasa geçmek, temizlemek ve inşa etmek, vb.) ... ama sonuçta çözüm, kullandığım harici çerçeveyle oldu, seçeneği Göm & Sign gelen İmzalamadaki olmadan yerleştir emin değil bu Xcode sorun olabilir .....
KARTA ÇALIŞMA ÇÖZÜMÜ
General
-> Frameworks, Libraries, and Embedded Content
ve çerçeveyi şu şekilde değiştirin Do Not Embed
(benim durumumda Alamofire.framework problemdi)Build Phases
, seçin +
New Run Scrip Phase
, ekleyin /usr/local/bin/carthage copy-frameworks
ve Input files
eklemek için$(SRCROOT)/Carthage/Build/iOS/Alamofire.framework
Şimdi çalışmalı 🥳
Bu, yakın zamanda Xcode 11'e güncellediğimde başıma gelmişti; Bir cihazda test yapıyorsanız, "Yapı Ayarları" na gidin, ardından "Kod İmzalama Kimliği" altında her şeyi "iOS Geliştirici" olarak değiştirin. Bunun sorunu çözmesi GEREKİR. Ardından, başlatmaya hazır olduğunuzda, iOS Dağıtımınızın kurulu olduğundan emin olun.
Aynı sorunla karşılaştım ve kodumda diğer yanıtlarda bahsedilen sorunların hiçbiri yoktu (aynı paket tanımlayıcılarını kullanan çerçeveler, eski sistem vb.).
Benim çözümüm, uygulamayı önce yan yükleme olarak yüklemek ve ardından uygulamayı normal şekilde çalıştırmaktı (Cmd + R).
Öncelikle projenizden bir IPA oluşturun (bunu yapmanın birçok yolu var, bunu uygulama dosyası içeren Payload adlı klasörü sıkıştırarak yaptım. Başka yollar da seçebilirsiniz, ihtiyacınız olan tek şey bir IPA dosyasıdır).
Ardından, Xcode'da cihazları ve simülatörleri (Cmd + Shift + 2) açın.
Şimdi YÜKLENEN UYGULAMALAR bölümündeki küçük artı düğmesine (+) tıklayın ve IPA'yı seçmeniz istenecektir. IPA'nızı seçin ve cihaza yüklenecektir.
Artık cihazda verilen paket tanımlayıcısının bir uygulaması mevcut olduğuna göre, çalıştırma komutunuz beklendiği gibi çalışacaktır.
Basitçe Cmd + R'ye basın ve projeniz cihazda çalışacaktır.
Benim durumumda sorun, bulut günlüklerinden geçen konsol günlüğü kullanılarak bulundu, installd
işlemde dosyamda bir sorun olduğunu söyleyen bir hata görüyorum plist.info
. Tam olarak ne olduğunu söylemedi Ama plist dosyamı düzeltmek onu çözdü. Benim durumumda 3 plist dosyam vardı (iPhone, saat ve saat uzantısı), sorun benim watch plist.info
dosyamdı ( NSLocationAlwaysUsageDescription
yanlışlıkla ekledim, bu sorunu çözdü).
installd
yazdırıldığı yerde girdi bulundu Failed to verify code signature of .../raygun4apple.framework : 0xe8008015 (A valid provisioning profile for this executable was not found.)
. Raygun4apple için "Yerleştir ve İmzala" yı seçtikten sonra her şey harika çalıştı.
CFBundleVersion
dize eksikti . Nedense boştu. Konsol günlüklerinde gerçek hatayı iPhone'un kendisinden buldum. Ancak Xcode 11, birden fazla denemeden sonra uygulamayı bulamadığını söylemeye devam etti.
IOS 13 için uygulamayı Xcode-beta ile yüklerken işe yarayan tek şey bilgisayara bağlı telefonu yeniden başlatmaktı.
Benimki düzeltildi. Alamofire çerçevesinin (Carthage aracılığıyla) derleme aşamasında kopyalanmaması (daha önce Xcode'daki Gömülü kitaplıklar bölümünde idi, ancak şimdi gitti ve gömme türünü seçmek işe yaramadı) neden oldu.
Komut dosyası gövdesi: /usr/local/bin/carthage copy-frameworks
Yollar $(SRCROOT)/Carthage/Build/iOS/Alamofire.framework
girdi dosyaları ve $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/Alamofire.framework
çıktı dosyaları içindir.
Umarım bu yardımcı olur veya çözümünüzü bulmanızı sağlar.
Sonunda bir düzeltme buldum (en azından benim için)
Bu sorunla karşı karşıya kaldım (hiçbir yerde görünmeyen) ve belki de Geliştirme / Üretim sertifikasıyla ilgili bir sorun var. "İmzalama ve Yetenekler" konusunda bir Manuel yapılandırmam var, bu nedenle Otomatik'e geçtiğimde sorunu çözmeniz yeterli. (kötü ingilizcem için özür dilerim)
Bu sorunla karşılaştım ve bunu günlükte fark ettim:
-[MIBundle pluginKitBundlesSkippingPlatformValidation:withError:]: Ignoring plugin at (path to my app extension) because it doesn't work on this OS version
Uzantım için Derleme Ayarlarında Dağıtım Hedefi sürümünü güncellemek bunu düzeltti.
Benim için sorun, Carthage ile indirilen Alamofire kitaplığıyla ilgiliydi. "Gömme" yi seçtiğinizden emin olun ve Carthage'ın Kitaplığı kopyalamasına izin verin.
Benchuk'un neden bir sorun yaşadığını anlamak için Konsolu kullandığını fark etmeden önce bu soruya verilen hemen hemen her cevabı denedim.
Konsolda installd
aradım ve projeme eklediğim "şişman" Çerçevenin gerçekten imzalanmış olduğunu buldum.
İmza, uygulamanın geri kalanıyla eşleşmedi ve bu da kurulumun sessizce başarısız olmasına neden oldu.
Neyin yanlış olduğunu bilerek, imzayı basitçe kaldırabilirim:
codesign --remove-signature Some.framework
Bu, Xcode 11.2'de ele alınmıştır . Xcode 11.2 ile, şimdi, uygulamanın yüklendiğini ancak başlatılamadığını gösteren bir hata yerine, uygulamanın yüklenemediğini gösteren bir hata almalısınız. Hata, yüklemenin neden başarısız olduğuna dair bazı ayrıntıları da içermelidir. Ayrıntılar yetersizse, gerçek bir cihaz yerine bir simülatör cihazı hedeflemeyi öneririm, çünkü bu daha yüksek bir doğruluk hatası üretmelidir.
Bu, App Store için Temel Hazırlık Profillerini kullanarak bir cihazda Uygulamayı çalıştırmaya çalıştığınızda gerçekleşir. Geliştirme veya Adhoc Profilleri kullanarak çalıştırdığınızdan emin olun.
Bunun bir başka nedeni de, IPA üretimi için bazı mimari soyma komut dosyası çalıştırabilirsiniz. Bunun herhangi bir hata verip vermediğini kontrol edin.
Çok garip bir şekilde, projemin kök klasörünü başka bir şeyle yeniden adlandırmak benim için hile yaptı. Muhtemelen bunun nedeni klasörün mevcut adıyla bir yerde xcode'un önbelleğe alınmasıydı.
Bir paylaşım uzantısı üzerinde çalışırken aynı sorunu yaşadım. Burada önerilen çözümlerin hiçbiri benim için işe yaramadı.
Hata ayıklama ve günlüğe kaydetmeyi önemsiyordum. Hata ayıklayamadım ve / veya günlük kaydı yapamadım. İlk başta uzantının çalışmadığını düşündüm, ancak bir test yaptım ve gerçekte çalıştığını doğruladım, ancak nedense hata ayıklayamadım veya günlüğe kaydedemedim.
Bulabildiğim en iyi şey, manuel olarak bir hata ayıklayıcı eklemek, günlüğe kaydetmek istediğim yere kesme noktaları eklemek, kesme noktalarını düzenlemek ve günlüğe kaydetmek ve değerlendirmeden sonra devam etmek için eylemler eklemekti. Bunu yapmak için gereken adımlar aşağıdadır:
Product/Scheme/Choose-Your-Scheme
Debug/Attach to Process by ID or Name...
. Ardından uzantının adını veya paket kimliğini yazın.Automatically continue after evaluating the actions
.Burada cevaplanmamış sorumu bulabilirsiniz.
Build Settings> Code Signing Identity> Debug'a giderek benimkini düzelttim. Uygun "geliştirme sertifikasına" sahip olduğunuzdan emin olun.
Xcode penceresinin üst kısmında, çalıştır / durdur'un yanındaki uygulama simgenizi tıklayın ve şemaları yönet'i seçin. Run and test'in "Debug" derleme yapılandırmasını kullandığından emin olun. Xcode bunları "yayın" olarak değiştirdi. Neden diye sorma bana! Xcode v 11'i (11a420a) kullanma
Benim için, simülatör mimarilerini uygulamadan çıkarmayı amaçlayan bir derleme aşaması betiğim vardı (App Store'da yayınlandığında).
Simülatör için oluşturmanın daha iyi hata ayrıntıları vereceğine dair bir öneri okudum ve betiğin her yapıda çalıştığını buldum, bu yüzden onu 'yalnızca yüklerken komut dosyasını çalıştır' olarak değiştirdim ve bu benim için sorunu çözmüş gibi görünüyor.