J'ai téléchargé Xcode 6 GM et j'ai soumis deux applications Swift à l'app store aujourd'hui. Toutes les deux ont réussi toutes les vérifications de pré-upload et toutes les autres choses qu'elles ont dû transmettre et ont été soumis avec succès. Mais ensuite, j'ai reçu deux courriels d'Apple ... un pour chaque programme et ils ont tous les deux déclaré ceci:
Cher développeur,
Nous avons découvert un ou plusieurs problèmes liés à votre livraison récente de "xxxxxxxx" (nom de mon application supprimé). Votre livraison a réussi, mais vous voudrez peut-être résoudre les problèmes suivants lors de votre prochaine livraison:
Trop de fichiers de symboles - Ces symboles ne correspondent à aucune tranche dans aucun binaire [1431D977-72BC-308F-AB71-71529F25400B.symbols, 158C72A7-98AC-3F07-B2BE-88427591B413.symbols, 44973EAC-563E-3403-555A14A1414.). Système de base, 678BF06F-0C3D-3A09-BFBF-699CFenregistrementStranger, 90907DB-0400-38ED-BB5F0C1233 -4422-32B8-8C40-CF9B45A2RC6.Symboles, B0CC9F7D-C542-3E-A518-B28B7ECABE80.symbols, BF6A4C3B-6FA5-3C51-8404-19C2F132458Symbols, C96Em -3045-BAD5-F6E51045D396.symbole, D4967AA3-8FB007124F8144AF8F4B.symbols, D813B314-ADR -8F7D-C49A36CD5C65.symboles]
Une fois les problèmes corrigés, vous pouvez utiliser Xcode ou Application Loader pour télécharger un nouveau fichier binaire vers iTunes Connect.
Cordialement,
L'équipe App Store
Je suppose que cela n’a vraiment rien à voir avec moi ou mes applications ... et qu’il s’agit simplement d’un caprice du premier jour Swift? Les deux applications sont encore en attente de "En attente" pour approbation "mode. Je ne peux certainement pas penser à quoi que ce soit que je puisse changer pour faire disparaître ce qu'ils ont dit! Toute autre personne soumet encore une Swift et obtenez cette réponse? Pensez que je devrais simplement ignorer et attendre pour voir ce qui se passe?
Cela se produit si vous incluez les informations de débogage de vos bibliothèques dans l'archive de projet, mais n'incluez pas les fichiers binaires. Ouvrez une fenêtre d’agenda avec votre projet. Dans le menu du bouton droit, sélectionnez "Afficher dans le Finder". Utilisez à nouveau le bouton droit de la souris sur le fichier d’archive du projet pour voir le contenu du paquet. Dans le dossier dSYMs
, vous pouvez trouver un lot de fichiers. Si vous exécutez commande de console sur ces fichiers, vous obtiendrez une liste de chaînes UUID:
dwarfdump -u MyFile.dSYM
Je suis sûr que vous trouverez des UUID dans le courrier électronique d'Apple.
Pour éviter cet avertissement, vous devez inclure pour archiver uniquement le fichier dSYM
de votre application, mais pas les bibliothèques. Pour cela, vous devez modifier la configuration des bibliothèques afin de ne pas générer le fichier dSYM
. Il suffit de chercher "format d’information de débogage" dans la configuration et de le changer de DWARF with dSYM File
à DWARF
seulement. Sur la capture d'écran, vous trouverez un exemple du framework iOS Stripe.
Si vous avez rencontré ce problème lors de l'utilisation de Cocoapods, ajoutez ceci à votre fichier podfile:
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['DEBUG_INFORMATION_FORMAT'] = 'dwarf'
end
end
end
Il définira le format des informations de débogage sur DWARF uniquement pour toutes vos cibles Pod (et non pour la cible principale de l'application).
Si vous utilisez des pods et que votre application utilise uniquement arm64 (il n'y a que arm64 dans le fichier info.plist de votre projet)
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>arm64</string>
</array>
vous pouvez essayer de suivre le script dans Podfile pour résoudre ce problème.
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ENABLE_BITCODE'] = 'NO'
config.build_settings['ARCHS'] = 'arm64'
end
end
end
ET
définir tous les objectifs de vos projets (pas les objectifs dans les pods) sur arm64 uniquement
J'ai ce problème en raison de l'architecture valide du projet arm64 où les cibles de cabossons ont une architecture valide arm64, armv7 et armv7s.
Pour vérifier quelle cible a quelle architecture valide, suivez les étapes suivantes
Ouvrez le terminal et indiquez le chemin du dossier dSYMs.
Entrez la commande dwarfdump --uuid *
et il affichera la liste des UUID avec des architectures valides.
L'UUID correspondra à l'email d'avertissement d'Apple
Le projet principal et la cible de cacao supposent avoir la même architecture valide. Ce faisant, cela résoudra le problème.
Pour moi tout était très simple. J'ai eu le même problème et je ne savais pas quoi faire pendant une semaine.
Une fois que vous avez soumis une application archieved, le certificat de distribution s'affiche dans une petite fenêtre contextuelle. Il y a une case à cocher après, vous devriez la décocher. Après cela, vous le soumettrez et recevrez un courrier électronique à propos des fichiers de symboles. MAIS ce n'est pas un problème. C'est juste un avertissement mais pas une erreur! Si vous décochez cette case, votre application sera envoyée correctement. J'espère que cela peut aider
Capture d'écran de la case à cocher et de la fenêtre contextuelle:
Le même problème a-t-il été résolu en ayant le même "General" => "Deployment Info" => "Deployment target" pour toutes mes cibles.
Le problème pour moi était une ligne dans mon build.xcconfig
fichier. Je devais enlever
IPHONEOS_DEPLOYMENT_TARGET = 11.0
qui fixait le projet à ne construire que pour arm64 (et non pour arm7). Suivre les étapes par @miOS
Je pouvais voir que le projet de modules était en construction pour les deux.
Dans Xcode, dans les paramètres de construction, recherchez "Supprimer les symboles de débogage lors de la copie" (COPY_PHASE_STRIP). Lorsque cette option est activée, les symboles de débogage sont omis de votre .app et placés dans un fichier .dSYM. Sinon, votre .app contient ces symboles. (Par défaut, les symboles de débogage sont supprimés des versions de version pour des raisons d’obscurcissement. Vous ne devriez probablement pas modifier ce paramètre pour la configuration de la version.)
Assurez-vous de cocher cette option dans le projet Configurer les paramètres
https://possiblemobile.com/2015/03/symbolicating-your-ios-crash-reports/