Yukarıdaki cevapların hiçbiri benim için işe yaramadı. Bunun nedeni, hatanın üst uygulamadan veya uzantısından kaynaklanmamasıydı. Bağlantılı kütüphanelerden biri hatalıydı.
Onaylamak için önce Xcode kullanarak arşivleyin, ardından Organizer'ı kullanarak girişi seçin ve Finder'da Göster'i kullanarak bulun. Bu .xcarchive
dosyayı gösterecektir .
Bu dosyayı seçin ve "Paket İçeriğini Göster" i seçin.
Products / Applications klasöründeki .app dosyasını ve tekrar "Paket İçeriğini Göster" i seçin.
Sorunlu modülü Frameworks klasöründe bulun. Örneğin, hata:
ERROR ITMS-90206: "Invalid Bundle. The bundle at 'MyApp.app/Frameworks/MyLib.framework' contains disallowed file 'Frameworks'."
Sonra Frameworks/MyLib.framework
aşağıdakiler muhtemelen görünür olacaktır:
../Frameworks/libswiftContacts.dylib
../Frameworks/libswiftCore.dylib
../Frameworks/libswiftCoreData.dylib
../Frameworks/libswiftCoreGraphics.dylib
../Frameworks/libswiftCoreImage.dylib
../Frameworks/libswiftCoreLocation.dylib
../Frameworks/libswiftDarwin.dylib
../Frameworks/libswiftDispatch.dylib
../Frameworks/libswiftFoundation.dylib
../Frameworks/libswiftLocalAuthentication.dylib
../Frameworks/libswiftObjectiveC.dylib
../Frameworks/libswiftPassKit.dylib
../Frameworks/libswiftUIKit.dylib
../Frameworks/libswiftWebKit.dylib
Bunlar, üst uygulamanın içerdiği bağlantılı kitaplığın veya modülün EMBEDDED_CONTENT_CONTAINS_SWIFT = YES;
Xcode'da bağımlı modülü bulun ve bayrağı güncelleyin:
Bu sorunun üstesinden geldikten sonra uygulamanın iTunes Store'dan açıklayıcı bir e-posta ile reddedilebileceğini unutmayın:
Invalid Swift Support - The Watch OS application has Swift libraries at both...
Bu da EMBEDDED_CONTENT_CONTAINS_SWIFT
bayrağa geri dönüyor . Yalnızca üst uygulamanın bu değere ayarlandığından emin olun YES
. Hem WatchKit uygulamasında hem de uzantısında bu işaretin ayarlanmış olması gerekir NO
. Bu, @ Mike'ın yukarıdaki cevabında ayrıntılı olarak açıklanmıştır.