UIWebView iOS5 смена пользовательского агента

Как я могу изменить пользовательский агент UIWebView в iOS 5?

Что я сделал до сих пор: Используя обратный вызов делегата, перехватите NSURLRequest, создайте новый URL-запрос и установите его user-agent как все, что я хочу, затем загрузите данные и перезагрузите UIWebView с помощью «loadData: MIMEType: ....».

Проблема: Это вызывает бесконечную рекурсию, где я загружаю данные, которые вызывают делегат обратно, а стажер вызывает делегат ....

Вот метод делегата:

- (BOOL)webView:(UIWebView *)aWebView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {



    dispatch_async(kBgQueue, ^{
        NSURLResponse *response = nil;
        NSMutableURLRequest *newRequest = [NSMutableURLRequest requestWithURL:[request URL]];
        NSDictionary *headers = [NSDictionary dictionaryWithObject:
                                 @"custom_test_agent" forKey:@"User-Agent"];
        [newRequest setAllHTTPHeaderFields:headers];
        [self setCurrentReqest:newRequest];
        NSData *data = [NSURLConnection sendSynchronousRequest:newRequest 
                                             returningResponse:&response 
                                                         error:nil];
        dispatch_sync(dispatch_get_main_queue(), ^{
            [webView loadData:data 
                     MIMEType:[response MIMEType] 
             textEncodingName:[response textEncodingName] 
                      baseURL:[request URL]];
        });
    });

    return YES;
}

Ответы на вопрос(3)

Ваш ответ на вопрос