Sto sviluppando un framework c oggettivo che verrà utilizzato da altri colleghi sviluppatori.Come passare argomenti di dipendenze opzionali come parametri nella funzione obiettivo c framework
In questo contesto, vorrei utilizzare, se disponibile, classi disponibili di altri framework, se disponibili.
Per esempio, in questo momento sto usando AdSupport.framework (se è disponibile - legati dallo sviluppatore app) con il seguente approccio:
if (NSClassFromString(@"ASIdentifierManager")) {
NSString adString = [[[NSClassFromString(@"ASIdentifierManager") sharedManager] advertisingIdentifier] UUIDString];
}
Comunque ora, voglio avere argomenti di funzioni pubbliche del mio framework per includere classi di dipendenze opzionali e io non sono in grado di farlo.
Ad esempio:
voglio avere una funzione:
+ (void) sendLocation: (CLLocation *) myLoc;
ma CoreLocation.framework saranno opzionalmente legato e forse non a disposizione di un app. Come posso seguire un approccio simile con AdSupport.framework qui sopra?
ho pensato che potevo fare qualcosa di simile:
+ (void) sendLocation: (NSClassFromString(@"CLLocation") *) myLoc;
o
+ (void) sendLocation: (id) myLoc;
o
+ (void) sendLocation: (Class) myLoc;
e quindi estrarre in qualche modo coordinate, ma non era in grado di raggiungere questo obiettivo. Ultima opzione (Classe) sembra compilare ma non riesco a trovare un modo per estrarre i parametri ..
Qualcuno può aiutare con quello?