现在许多网站专门针对iPhone做了专用的页面,比如用Safari访问雅虎看到的是iPhone的页面,可是在自己的程序中用UIWebView,却是一般在PC上表示的页面。
像这样的网站,都是通过浏览器的 User-Agent 来切换页面的。但是 UIWebView 中不能设置 User-Agent,所以只可能看到普通的PC页面。
不同通过下面的私有API方法可以设置 User-Agent。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#import <objc/runtime.h>
@interface MyWebViewController : UIViewController {
IBOutlet UIWebView *myWebView;
}
- (void)viewDidLoad {
NSString *userAgent =
@"Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_1 like Mac OS X; ja-jp) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5F136 Safari/525.20";
id webDocumentView;
id webView;
webDocumentView = objc_msgSend(myWebView, @selector(_documentView));
object_getInstanceVariable(webDocumentView, "_webView", (void**)&webView);
objc_msgSend(webView, @selector(setCustomUserAgent:), userAgent);
}
|
首先, 调用 UIWebView 的 _documentView 方法,得到 UIWebDocumentView 对象。接着从 UIWebDocumentView 中取出 _webView 成员。WebView类中有 setCustomUserAgent: 方法,用它来这时任意的 User-Agent。
分享到:
相关推荐
移动应用开发_iOS开发示例教程之UIWebview
这是iPhone开发之UIWebView示例程序,具体参考: http://blog.csdn.net/htttw/article/details/7888557
两步实现iOS UIWebView 通过 cookie 完成自动登录。
基于NSURLSession NSURLProtol的UIWebView离线缓存 主要是使用苹果的黑魔法类:NSURLProtocol来对网络请求进行拦截,拦截后使用自定义的网络去加载数据后进行离线缓存。这样保证在没有网络的情况下,也能保证离线能...
uiwebview播放视频 iphone开发 ,一个demo
有用的控件,经常使用设置背景透明 设置webview的backgroundColor属性为[UIColor clearColor]; ? 1 webView.backgroundColor = [UIColor clearColor]; 为webview中的HTML页面的body标签添加CSS背景样式设置 ? ...
ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability. Unity IOS审核被拒,解决办法,去网上看了好多帖子,...
IOS开发中因为引入cocos2dx,导致代码审核不通过无法提交( Apple will stop accepting submissions of apps that use UIWebView APIs )。该问题的解决方案有两种:1)升级Cocos2dx的版本,在查看Cocoas官网及Cocoas...
iTunesConnect吃包 因为ipa包中包含uiwebview 5月1号以后iTunesConnect不允许上传的ipa包中屌用UIWebView,使用过后上传的ipa包都不会显示在活动里(我称呼这种骚操作为‘吃包’)。 已经把项目工程里面的有关...
NJKWebViewProgress 是一个 UIWebView 的进度条界面库,UIWebView 本身是不提供进度条的。
IOS--UIWebView加载进度条(NJKWebViewProgress)
iOS-UIWebview缓存并保证实时性 详细解释:http://blog.csdn.net/u014220518/article/details/72380291 欢迎关注!
完美的webView,不懂UIwebView的可以看看
angular-ios9-uiwebview-patch Bower和NPM支持
支持>=iOS8系统,包含功能:页面加载进度条、上方导航、底部toolbar,转场动效、分享、打开appstore下载弹窗、和js交互 国际化、兼容iPad、preview(>=iOS9)、用chrome、safari打开网页、清缓存、设置超时时长、缓存...
一款UIWebView的加载进度条,基于CAShapeLayer,有两种显示风格:纯颜色显示和渐变色显示
浏览器演示iOS Swift 一个基于UIWebView的简单Web浏览器的演示。 这是Swift版本。 Objective-C版本在。 屏幕截图1 屏幕截图2
ios-UIWebView简易浏览器
对于新开发,请使用此类而不是较早的UIWebView类。” 初始化Web视图 配置 WKWebViewConfiguration对象是用于初始化Web视图的属性的集合。 - ScrollView - Title - URL - customUserAgent - certificateChain 代表...