次のコードを使用して、文字列クエリからの応答を取得しています。私のアプリにはたくさんのクエリがあり、このコードを何度もコピーして貼り付けたいです
インスタンスを作成し、urlStringを渡して、応答を返す方法はありますか。
NSObjectクラスで関数を作成しようとしました
+(NSString*) myFunc{}
が、メインUIスレッド以外ではGCDが機能しないようです。この問題を解決するにはどうすればよいですか
__block__ NSString *response;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
//your server url and request. data comes back in this background thread
response; = [NSString stringWithContentsOfURL:[NSURL URLWithString:queryString] encoding:NSUTF8StringEncoding error:&err];
dispatch_async(dispatch_get_main_queue(), ^{
//update main thread here.
NSLog(@"%@",response); // NEED TO RETURN THIS
if (err != nil)
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle: @"Error"
message: @"An error has occurred."
delegate: self
cancelButtonTitle:@"Ok"
otherButtonTitles:nil];
[alert show];
[indicator stopAnimating];
}
});
});