web-dev-qa-db-fra.com

Conséquences de l'avertissement "Les dylibs/frameworks intégrés ne fonctionnent que sur iOS 8 ou version ultérieure"

Avec Xcode 6.x, nous pouvons utiliser le modèle CocoaTouch Framework pour créer une bibliothèque framework et Xcode créera le .framework pour nous lors de la construction, ce qui est génial. Dans notre framework, nous souhaitons prendre en charge iOS 7.1 et les versions ultérieures. Nous avons donc spécifié 7.1 pour la cible de déploiement (dans notre framework). Maintenant, lors de la construction, un avertissement apparaît: "Les dylibs/frameworks intégrés ne fonctionnent que sur iOS 8 ou version ultérieure". Depuis, j'ai lu un certain nombre de billets de blog sur le sujet qui indiquent que cet avertissement peut être ignoré, car il fonctionne correctement (il reste encore à tester pour en être sûr). Ce qui m'inquiète, c'est que j'ai lu un article sur Stack Overflow qui indique qu'une application peut être rejetée par Apple dans l'App Store (voir: Xcode 6 et Embedded Frameworks uniquement pris en charge dans iOS8 )

Cela ne s'applique-t-il que lorsque, dans Xcode, l'application est liée à Général> Bibliothèques incorporées?

Voici comment nous voulons que nos clients soient reliés à notre framework:

  1. Via CocoaPods
  2. En référençant .framework dans Build Phase> Link Binary With Libraries

J'ai besoin de comprendre dans quelles conditions l'App Store rejettera une application qui utilise notre infrastructure CocoaTouch et prend en charge iOS 7.x.

14
rich

L'application ne sera pas rejetée si vous modifiez le type de votre cadre en Static . Voir ma réponse ici .

3
Maciek Czarnik

Je crois que tant que l'application gère correctement le cadre, il ne devrait pas y avoir de problèmes. Mélanger avec des cocoapods pourrait être délicat et honnêtement, je ne connais pas le meilleur moyen de le combattre.

Mais si je comprends bien, si une application prend en charge iOS 7.X -> 8.X et utilise un framework tactile cacao intégré, tant que les contrôles de compatibilité sont là pour assurer que l’application ne tombe pas en panne dans 7.X, il ne devrait N'y a aucune raison pour que l'application soit rejetée.

1
Naughty_Ottsel

Nous avons essayé d'exécuter le dernier code sur les configurations suivantes:

iOS 8+ - iPhone 5s iOS 7.1.2 - iPhone 4 iOS 6.1.3 - iPad 4

L'application fonctionne correctement sur les trois appareils, mais l'avertissement est présent dans le Xcode lors de la compilation. "Les frameworks/dylibs intégrés ne fonctionnent que sur iOS 8 ou version ultérieure"

De plus, j'ai essayé d'archiver l'application pour la soumettre à l'App Store.

En outre, vous avez découvert un lien où un développeur Apple a déclaré qu'il s'agissait d'un bogue: https://devforums.Apple.com/message/999579#999579

0
Ravi Dalmia