我是 iOS 开发的新手。我正在开发一个应用程序,该应用程序在加载应用程序时会加载其一些设置。它曾经从外部 url 请求 JSON。
#define kBgQueue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
#define kLatestKivaLoansURL [NSURL URLWithString: @"http://www.domain.com/jsonkeys.php"]
#import "SyncJsonSettings.h"
@implementation SyncJsonSettings
(void)sync{
dispatch_async(kBgQueue, ^{
NSError* error;
NSString *str = [NSString stringWithContentsOfURL:kLatestKivaLoansURL encoding:NSUTF8StringEncoding error:&error ];
[self performSelectorOnMainThread:@selector(fetchedData:) withObject:str waitUntilDone:YES];
});
}
如果互联网不可用,整个应用程序将冻结。我认为这是因为主线程。有人可以帮我在后台线程中执行此操作吗?