相关疑难解决方法(0)

在UIWebView中更改用户代理

我有业务需要能够为嵌入式UIWebView自定义UserAgent.(例如,如果用户使用的是应用程序的一个版本而不是另一个版本,我希望服务器以不同的方式做出响应.)

是否可以在现有的UIWebView控件中自定义UserAgent,例如,对于Windows应用程序中的嵌入式IE浏览器?

iphone cocoa-touch uiwebview ios

69
推荐指数
8
解决办法
10万
查看次数

UIWebView iOS5更改用户代理

如何在iOS 5中更改UIWebView的用户代理?

到目前为止我做了什么: 使用委托回调,拦截NSURLRequest,创建一个新的url请求并将其用户代理设置为我想要的任何内容,然后下载数据并使用"loadData:MIMEType:...重新加载UIWebView" ".

问题: 这会导致无限递归,我加载数据,调用代理返回,实习生调用委托....

这是委托方法:

- (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;
}
Run Code Online (Sandbox Code Playgroud)

cocoa-touch objective-c uiwebview ios

35
推荐指数
1
解决办法
3万
查看次数

iPhone WebApps,有没有办法检测它是如何加载的?主屏与Safari?

我有一个iPhone Web App,我有兴趣检测应用程序是否从以下位置加载:

  1. iPhone Safari
  2. iPhone安装的网络应用程序(通过添加到我的主屏幕)加载没有safari栏.

有任何想法吗?

iphone mobile web-applications iphone-standalone-web-app

26
推荐指数
2
解决办法
1万
查看次数

使用Javascript在Android中检测webview

Google Play上有一个应用程序,它将我的网站嵌入到webview中.该应用程序不做任何其他事情,并包括第三方货币化功能.

我想检测用户何时通过应用程序访问我的网站,以便我可以显示一条消息.

然而,我还没有找到区分Android移动浏览器和应用程序的方法,因为用户代理是相同的.

是否有任何已知的方法来检测webview?

谢谢.

android android-webview

5
推荐指数
1
解决办法
3045
查看次数