De retour sur mes essais autour des ANE, je rencontre un probleme que je n'arrive pas a regler.
Alors qu'il y a quelques semaines mon ANE fonctionnait bien, je rencontre maintenant une erreur dans flash builder lorsque j'essaye de l'utiliser :
Error occurred while packaging the application:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_ASIdentifierManager", referenced from:
objc-class-ref in libcom.test.idfaAne.a(idfaAne.o)
ld: symbol(s) not found for architecture arm64
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_ASIdentifierManager", referenced from:
objc-class-ref in libcom.test.idfaAne.a(idfaAne.o)
ld: symbol(s) not found for architecture armv7
Compilation failed while executing : ld64
D'apres mes recherches sur internet il s'agirait d'un probleme d'ajout de framework dans le Build. J'ai ecume le web, tente differentes choses, mais rien n'y fait :
- ajoute le AdSupport.framework dans Link Binary With Libraries
- ajoute le AdSupport.framework dans Compile Sources
- copie les fichiers AdSupport.h et ASIdentifierManager.h dans mon folder principal
- importe AdSupport grace au @import AdSupport;
- importe AdSupport grace au #import "AdSupport.h"
- passe le Build Active Architecture Only a Yes et No
- essaye a peut pres toutes les configurations possibles des options ci-dessu
Rien n'y fait, toujours la meme erreur encore et encore.
Voici un screen shot de mes Build Phases

Et voici un bout de mon code :
#import "FlashRuntimeExtensions.h"
@import AdSupport;
FREContext eventContext;
FREObject init(FREContext ctx, void* funcData, uint32_t argc, FREObject argv[])
{
eventContext = ctx;
return NULL;
}
FREObject getIdfa(FREContext ctx, void* funcData, uint32_t argc, FREObject argv[])
{
if([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled])
{
const char *str = [[[[ASIdentifierManager sharedManager] advertisingIdentifier]UUIDString]UTF8String];
FREObject idfa;
FRENewObjectFromUTF8(strlen(str)+1, (const uint8_t*)str, &idfa);
return idfa;
}
else
{
return NULL;
}
}
Auriez-vous une idee de comment faire pour que je puisse m'en sortir ?
Merci.