Den Atıf Teknik S ve C QA1886 :
Swift kitaplığı libswiftCore.dylib'e başvurmaya çalışırken Swift uygulaması çöküyor.
S: Swift dil uygulamamı çalıştırmayı denediğimde cihazımın konsolunda meydana gelen libswiftCore.dylib yükleme hatası hakkında ne yapabilirim?
Y: Bu sorunu düzeltmek için, Ekip Kimliğinize ayarlanmış Konu Kuruluş Birimi (OU) ile kod imzalama sertifikalarını kullanarak uygulamanızı imzalamanız gerekir. İOS 8 piyasaya sürüldükten sonra oluşturulan tüm Kurumsal ve standart iOS geliştirici sertifikaları, Swift dil uygulamalarının çalışmasına izin vermek için uygun yerde yeni Takım Kimliği alanına sahiptir.
Genellikle bu hata, aygıtın konsol günlüğünde aşağıdakilerden birine benzer bir mesajla görünür: [....] [deny-mmap] eşlenen dosyanın ekip tanımlayıcısı yoktur ve platform ikili dosyası değildir: / private / var / mobile / kaplar / Bundle / Uygulama / 5D8FB2F7-1083-4564-94B2-0CB7DC75C9D1 / YourAppNameHere.app / Altyapıları / libswiftCore.dylib
Dyld Error Message:
Library not loaded: @rpath/libswiftCore.dylib
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x0000000120021088
Triggered by Thread: 0
Referenced from: /private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/TestApp
Reason: no suitable image found. Did find:
/private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/Frameworks/libswiftCore.dylib: mmap() error 1 at address=0x1001D8000, size=0x00194000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/Frameworks/libswiftCore.dylib
Dyld Version: 353.5
Arşiv oluştururken ve uygulamanızı paketlerken yeni sertifikalara ihtiyaç vardır. Yeni sertifikalardan birine sahip olsanız bile, sadece mevcut bir hızlı uygulama arşivinden vazgeçmek işe yaramayacaktır. İOS 8 öncesi bir sertifika ile oluşturulmuşsa, başka bir arşiv oluşturmanız gerekecektir.
Önemli: Yeni bir Kurumsal Dağıtım sertifikasını iptal etmeniz ve kurmanız gerekirse lütfen dikkatli olun. Şirket içi bir Kurumsal geliştiriciyseniz, Kurumsal çalışanlarınızdan herhangi birinin halen o kurumsal dağıtım sertifikasıyla imzalanmış uygulamalar olarak kullanmakta olduğu bir uygulamayı imzalamak için kullanılan bir dağıtım sertifikasını iptal etmemeye dikkat etmeniz gerekir. hemen çalışmayı bırakacak. Yukarıdakiler yalnızca Kurumsal Dağıtım sertifikaları için geçerlidir. Geliştirme sertifikalarının, kurumsal / standart iOS geliştiricileri için iptal edilmesi güvenlidir.
AirSign çalışanları, sorun kökenini Şirket İçi sertifikanın konu alanındaki eksik OU özniteliğinden belirtir.
Konu: UID = 269J2W3P2L, CN = iPhone Dağıtımı: Şirket Adı, OU = 269J2W3P2L, O = Şirket Adı, C = FR
Kurumsal geliştirme sertifikam var, yeni bir tane oluşturmak sorunu çözdü.