当我在飞行模式下调用
在调用此方法加载本地字体文件时:
以下方法中
CGFontCreateWithDataProvider
时,我的应用程序会冻结。而在非飞行模式下,它可以正常工作。该字体文件存储在设备上,不应该发生任何网络访问。在调用此方法加载本地字体文件时:
[self registerIconFontWithURL:[[NSBundle mainBundle] URLForResource:@"FontAwesome" withExtension:@"otf"]];
以下方法中
url
的值为: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。
我不知道为什么会发生这种情况,也找不到任何帮助。有人知道为什么会出现这种情况吗?
先感谢您的帮助!
url
的值是什么? - rmaddyCTFontManagerRegisterFontsForURL()
呢? - pxpgraphics