Erreur Core Plot et ARC de l'iPhone 4 iOS: "La cible de déploiement actuelle ne prend pas en charge les références faibles"
J'ai converti mon projet pour iOS 5 et a permis à l'ARC. Maintenant, j'ai besoin d'intégrer de base de l'intrigue avec le projet. Lorsque j'essaie d'instancier un échantillon contrôleur inclus avec le Noyau de l'Intrigue, je reçois environ 20 erreurs comme suit:
Le déploiement actuel de la cible ne prend pas en charge automatisée __références faibles
J'ai explicitement dit fno-objc-arc
à côté du nom du contrôleur dans les paramètres de construction.
Quoi d'autre ai-je besoin pour exécuter cœur de l'intrigue avec l'ARC activé?
Merci!
source d'informationauteur Alex Stone
Vous devez vous connecter pour publier un commentaire.
__weak
références ne fonctionne que sur iOS 5 et au-dessus. Si vous avez la cible de déploiement définir à quoi que ce soit avant, alors vous obtiendrez l'erreur. En gros, si vous souhaitez déployer sur d'anciens appareils, vous ne pouvez pas utiliser automatisé__weak
références. Le substitut serait__unsafe_unretained
Tout Inspire48 la réponse de couvre largement le fait que
__weak
les références ne sont pas pris en charge dans les versions de l'iOS antérieures à la version 5.0, ce problème était dû à la Base de ce Complot en-têtes de ne pas être complètement compatible ARC.Cela a été corrigé dans le dépôt Mercurial il y a quelques mois, donc si vous voulez utiliser de Base de l'Intrigue dans un ARC-activé projet, vous devez saisir le code le plus récent à partir du référentiel. Le 0.9 instantané n'a pas d'interagir avec l'ARC, en raison d'éléments de ce genre dans ses en-têtes.
Le Cœur de l'Intrigue code de la structure dans le référentiel prend également en charge le ciblage de retour sous iOS 4.0 et Snow Leopard avec ARC activé dans votre application (je crois 3.0 et Leopard sans ARC), de sorte que vous n'avez pas besoin de cible de 5,0 à l'utilisation de l'ARC avec le Noyau de l'Intrigue.
De Développement Pour Le Changement Targert 6.0.
Sélectionnez Votre Projet > cible > le développement cible > changement de 6.0