xcodebuild exportArchive: no se encontraron dispositivos aplicables

Después de actualizar a Xcode 8 con iOS 10, obtengo exactamente este error. Estoy en El Capitan más reciente y uso las siguientes versiones de ruby ​​(actualizado por rvm, igual que 2.0.0 que es la versión del sistema) y CFPropertyList:

Philipps-MacBook-Pro:mobile-sdk prakuschan$ ruby -v ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15] Philipps-MacBook-Pro:mobile-sdk prakuschan$ gem list CF *** LOCAL GEMS *** CFPropertyList (2.3.3) 

El command xcodebuild -exportArchive se ejecuta en un script de shell, y después de un file exitoso obtengo el siguiente error:

 ** ARCHIVE SUCCEEDED ** 2016-09-22 10:02:16.460 xcodebuild[10375:8369748] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/9y/r64c9wld0jx2yf3glsrzhhr00000gn/T/AppName_2016-09-22_10-02-16.456.xcdistributionlogs'. 2016-09-22 10:02:18.228 xcodebuild[10375:8369748] [MT] IDEDistribution: Step failed: <IDEDistributionThinningStep: 0x7fe435f9dfb0>: Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.} error: exportArchive: No applicable devices found. Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.} ** EXPORT FAILED ** 

Al search en xcdistributionlogs, IDEDistribution.standard.log contiene las siguientes líneas al final:

 2016-09-22 08:02:18 +0000 [MT] /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool exited with a signal 6 2016-09-22 08:02:18 +0000 [MT] ipatool JSON: (null) 

No sé si es valioso, pero esta es la ruta a ipatool:

 2016-09-22 08:02:17 +0000 [MT] Running /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool 

Cualquier ayuda es muy apreciada. Ya probé muchas sugerencias encontradas en Google, pero aún no encontré ninguna solución.

Estaba viendo el mismo problema. Después de search a través de:

https://forums.developer.apple.com/thread/13446

Y en otros lugares para Xcode 7 problemas similares. Me di count de que esta es única. Puede solucionarlo si modifica el script ipatool en Xcode 8.

 sudo vi /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool 

Y comente esta línea:

 # Check the artwork idiom. #return nil,"the device doesn't support the app's UIDeviceFamily" unless (deviceTraits.supportedIdioms & bundle.supportedIdioms).size > 0 

Encontrado a través del command ipatool en:

 /var/folders/.../IDEDistribution.standard.log 

Puede searchlos a través de:

 $ sudo find /private/var -name "*.xcdistributionlogs" 

Detalles relevantes / pasos de debugging: https://github.com/fastlane/fastlane/issues/8737

Tuvimos el mismo problema "No applicable devices found" después de ejecutarse

 xcodebuild -exportArchive -archivePath ../bin/archive/GetSocialTestApp.xcarchive -exportPath ../bin/ -exportOptionsPlist ../../scripts/exportOptions.plist 

Solución de trabajo : envuelva xcodebuild con xcbuild-safe.sh desde fastlane repo . La solución detallada se describe aquí .

Como apareció, el problema fue causado por las variables de entorno xcbuild-safe.sh , xcbuild-safe.sh limpia antes de ejecutar xcodebuild .

Soluciones no funcionales que probamos:

  • modificar el script ipatool como se describe aquí
  • downgrade a ruby ​​2.0.0
  • instale gems de Ruby CFPropertyList , sqlite3 que ipatool se quejaba

Estaba recibiendo el Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." con mi proyecto empresarial cuando incluya un marco de terceros. Mi file exportOptionsPlist contenía la compileBitcode=NO input, pero el proyecto en sí mismo tenía bitcode activado.

También utilicé el logging en /var/folders/.../IDEDistribution.standard.log y encontré un error más claro que me condujo a la solución.

Más información: https://developer.apple.com/library/content/technotes/tn2432/_index.html

Copie los siguientes y agréguelo al final de su ~ / .bashrc (~ / .zshrc si está usando ZSH). y salga de la terminal y vuelva a iniciarla (debe) .

 unset RUBYLIB unset RUBYOPT unset BUNDLE_BIN_PATH unset _ORIGINAL_GEM_PATH unset BUNDLE_GEMFILE unset GEM_HOME unset GEM_PATH 

FYI:

Como Xcode tiene una dependencia de 2 gems externas: sqlite y CFPropertyList Más información https://github.com/fastlane/fastlane/issues/6495

Tenemos que desasociar esas variables para rbenv, rvm y cuando el usuario usa bundler. Incluso si no usamos rbenv en algunos entornos como CircleCI, también debemos desarmar GEM_HOME y GEM_PATH explícitamente. Más información https://github.com/fastlane/fastlane/issues/627

¡Eso es! Establezca el bitcode = no , el error se solucionó.

@ Las respuestas de Tom Harada funcionaron para mí, pero quería encontrar qué era lo que ipatool que se rompiera el ipatool pnetworkingeterminado.

Era el SDK de Google Cast 3.2, al que le faltaba una input en el marco de plist. La actualización a 3.3 resolvió el problema de export.

Refs: https://code.google.com/p/google-cast-sdk/issues/detail?id=954 https://github.com/fastlane/fastlane/issues/6223#issuecomment-267343853

Mi script de compilation tiene el mismo problema y verifico algún marco que agregué. Hay un marco que incluye un file Plist (el nombre es el mismo que Info.plist). Por lo tanto, elimino el file Info.plist, el script de compilation funciona bien.

introduzca la descripción de la imagen aquí

Tuvo el mismo problema con XCode 8.2.1

En mi caso, el problema se estaba reproduciendo al exportar un file para la distribución adhoc o appstore con la siguiente información de export

 <?xml version=1.0 encoding=UTF-8?> <!DOCTYPE plist PUBLIC -//Apple//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd> <plist version=1.0> <dict> <key>teamID</key> <string>TEAMID</string> <key>method</key> <string>ad-hoc</string> # or `app-store` <key>uploadSymbols</key> <true/> <key>compileBitcode</key> <false/> <key>uploadBitcode</key> <false/> </dict> </plist> 

Resultó que uno de los frameworks vinculados se compiló usando bitcode. Esto se señaló en el logging de export de xcode: IDEDistribution.stadard.log :

 error: Failed to verify bitcode in YandexMapKit.framework/YandexMapKit: error: Bundle only contains bitcode-marker /var/folders/zb/ftpjx10s547ddmzm_ybqdm51xdv_t7/T/IDEDistributionThinningStep.NKQ/Payload/Avito.app/Frameworks/YandexMapKit.framework/YandexMapKit (armv7) 

Tuve que YandexMapKit a comstackr manualmente el proyecto YandexMapKit en iphoneos e iphonesimulator y fusionarlos en un marco universal

Al principio, debes verificar si has instalado sqlite3 y CFPropertyList con gem en tu Mac. Use estos commands para revisar el resultado en su terminal:

  • gem list | grep sqlite3
  • gem list | grep CFPropertyList

Si no imprime nada, entonces tiene que instalarlos con sudo

  • sudo gem install sqlite3
  • sudo gem install CFPropertyList