Ho appena aggiornato all'ultima versione di Xcode 4.3. Ho il mio plist.which è pre-elaborato e rispetto a 4.2 non sembra funzionare più.Xcode 4.3 - il preprocessore non funziona più per #define con "http: //"?
I set Info.plist other pre-processor
flag -traditional
(per essere in grado di saltare //
considerato come un commento).
ho impostato
#define MYSERVER http://127.0.0.1:1234/
e nel mio plist
<key>myhost</key>
<string>MYSERVER</string>
Quando controllo nel nuovo Xcode 4.3 vedo dentro NSDictionary *bundle = [[NSBundle mainBundle] infoDictionary];
myhost = "http:/ /127.0.0.1:1234/"
Ho un trucco veloce per esso .
NSString *hack = [[[[NSBundle mainBundle] infoDictionary] objectForKey:@"myhost"] stringByReplacingOccurrencesOfString:@" " withString:@""];
url = [NSURL URLWithString:hack];
Questo sta facendo la mia app che funziona ancora, ma mi piacerebbe avere una soluzione pulita. Qualche idea?
Il commento nel bug clang indica che è stato risolto (https://llvm.org/bugs/show_bug.cgi?id=12035), ma a partire da Xcode 7.2 non funziona per me. La documentazione per '-traditional' è qui: https://developer.apple.com/library/mac/technotes/tn2175/_index.html –