Weinre调试移动端页面
2015-07-18 17:18
405 查看
[b]Weinre是什么[/b]
如果我们做的是Cordova(phonegap)或其他hybird应用,当使用到原生功能时候(类似原生请求数据或页面切换时),没办法在PC chrome浏览器调试页面,一旦页面在手机显示出了问题,我们比较难找到找到原因,有时还只能猜或alert些东西。
使用Weinre工具,Weinre的本意是Web Inspector Remote,它是一种远程调试工具,它可以将远程的页面经过代理在PC上调试页面元素、样式,JS。
[b]Weinre的原理[/b]
三个端的含义:
客户端(client):本地的WebInspector,远程调试客户端。
服务端(agent):本地的HTTPServer,为目标页面与客户端建立通信。
目标页面(target):被调试的页面,页面已嵌入weinre的远程js。
(上面图片及解释转自其他文章)
调试过程:
客户端将指令(请求DOM、执行js)post到代理服务端,目标页面定时(大概5s)从服务端get指令,然后将结果post回服务端,最终客户端定时从服务端get结果。
PS:由于Weinre的客户端是基于Web Inspector开发,而Web Inspector只兼容WebKit核心的浏览器,所以只能在Chrome/Safari浏览器打开Weinre客户端进行调试。
[b]Weinre安装[/b]
安装nodejs
weinre基于nodejs,所以先安装nodejs,地址 http://blog.nodejs.org/2013/07/25/node-v0-10-15-stable/
PS:请使用 v0-10-15版本的nodejs,不然weinre安装不了
安装weinre
命令行执行
这就是安装成功了。
[b]Weinre运行[/b]
1.命令行键入
httpPort为调试服务器运行的端口,默认8080;boundHost 调试服务器绑定的IP地址或域名,默认localhost。
2.用webkit的浏览器(由于weinre的设计更多的是基于webkit的浏览器,因此建议使用chrome/safari)访问weinre服务器:http://localhost:8081
3.点击打开debug面板:http://localhost:8081/client/#anonymous
4.获取服务端的IP地址,例如:192.168.1.101,添加如下js到需要调试的页面。
5.在移动设备上访问此页面,即在客户端点击Targets看页面结构,或者执行js。
如果我们做的是Cordova(phonegap)或其他hybird应用,当使用到原生功能时候(类似原生请求数据或页面切换时),没办法在PC chrome浏览器调试页面,一旦页面在手机显示出了问题,我们比较难找到找到原因,有时还只能猜或alert些东西。
使用Weinre工具,Weinre的本意是Web Inspector Remote,它是一种远程调试工具,它可以将远程的页面经过代理在PC上调试页面元素、样式,JS。
[b]Weinre的原理[/b]
三个端的含义:
客户端(client):本地的WebInspector,远程调试客户端。
服务端(agent):本地的HTTPServer,为目标页面与客户端建立通信。
目标页面(target):被调试的页面,页面已嵌入weinre的远程js。
(上面图片及解释转自其他文章)
调试过程:
客户端将指令(请求DOM、执行js)post到代理服务端,目标页面定时(大概5s)从服务端get指令,然后将结果post回服务端,最终客户端定时从服务端get结果。
PS:由于Weinre的客户端是基于Web Inspector开发,而Web Inspector只兼容WebKit核心的浏览器,所以只能在Chrome/Safari浏览器打开Weinre客户端进行调试。
[b]Weinre安装[/b]
安装nodejs
weinre基于nodejs,所以先安装nodejs,地址 http://blog.nodejs.org/2013/07/25/node-v0-10-15-stable/
PS:请使用 v0-10-15版本的nodejs,不然weinre安装不了
安装weinre
命令行执行
npm -g install weinre
这就是安装成功了。
[b]Weinre运行[/b]
1.命令行键入
weinre -httpPort 8081 -boundHost -all-
httpPort为调试服务器运行的端口,默认8080;boundHost 调试服务器绑定的IP地址或域名,默认localhost。
2.用webkit的浏览器(由于weinre的设计更多的是基于webkit的浏览器,因此建议使用chrome/safari)访问weinre服务器:http://localhost:8081
3.点击打开debug面板:http://localhost:8081/client/#anonymous
4.获取服务端的IP地址,例如:192.168.1.101,添加如下js到需要调试的页面。
<script src="http://192.168.1.101:8081/target/target-script-min.js#anonymous"></script>
5.在移动设备上访问此页面,即在客户端点击Targets看页面结构,或者执行js。
相关文章推荐
- android 项目的主要结构与详细讲解
- 基于mina的的android即时通信app
- 【Android】资源系列(一) -- 国际化(多语言)
- Android-PullToRefresh库实现上拉刷新下拉加载
- Android.mk详解
- android颜色对应的xml配置值,颜色表
- Android Support Design 中 CoordinatorLayout 与 Behaviors 初探
- Android自定义View研究(四) -- 在XML中定义View
- Elasticsearch之servicewrapper安装
- android:How to delete a module in Android Studio?
- android view构造函数研究
- <转>提高iOS开发效率的方法和工具
- 第三方登录之微信登录
- 【Cocos2d-x】CCArray
- OC学习笔记之OC内存管理
- android中Handler的源码分析
- android studio使用git的部分注意事项
- Android开发之PackageManager类
- 安卓MP3播放器开发实例(2)之音乐播放
- How to Write a simple UEFI EDKII Application:如何编写一个UEFI简单的应用程序[5]