Quando si effettua una chiamata a CGFontCreateWithDataProvider
in modalità aereo, le mie app si bloccano. Non in modalità aereo, funziona bene. Il carattere è memorizzato sul dispositivo, nessun accesso alla rete dovrebbe accadere.CGFontCreateWithDataProvider si blocca in modalità aereo
Durante la chiamata di questo metodo per caricare un file di font locale:
[self registerIconFontWithURL:[[NSBundle mainBundle] URLForResource:@"FontAwesome" withExtension:@"otf"]];
Il valore della url
nel metodo seguente è: file: /// var/mobile/Applications/48D3DA14-235B-4450 -A081-7A6BA6116667/Blah.app/FontAwesome.otf
+ (void)registerIconFontWithURL:(NSURL *)url
{
NSAssert([[NSFileManager defaultManager] fileExistsAtPath:[url path]], @"Font file doesn't exist");
CGDataProviderRef fontDataProvider = CGDataProviderCreateWithURL((__bridge CFURLRef)url);
//******Freezes after the next line******
CGFontRef newFont = CGFontCreateWithDataProvider(fontDataProvider);
//******FROZEN******
CGDataProviderRelease(fontDataProvider);
CFErrorRef error;
CTFontManagerRegisterGraphicsFont(newFont, &error);
CGFontRelease(newFont);
}
iOS 7.1.x, iPhone 5.
Non ho idea del perché questo potrebbe accadere e non sono stato in grado di trovare alcun aiuto là fuori. Qualcuno ha idea del perché questo potrebbe accadere?
Grazie in anticipo!
Invia il codice pertinente. – rmaddy
Qual è il valore di 'url'? – rmaddy
@rmaddy hai guardato troppo presto, è lì ora =) – DiscDev