蓝戒博客

  • 首页
  • 研发说
  • 架构论
  • 效能录
  • AI谈
  • 随笔集
智构苍穹
AI为翼,架构为骨,文化为魂,实践探新境,价值筑长青。
  1. 首页
  2. 效能录
  3. 正文

移动web开发远程真机调试工具weinre调试方法

2016年5月18日 6902点热度 0人点赞 4条评论

引言
对于开发者们来说,移动web的调试一直是个难题,前期可以使用模拟器来协助调试,但到了真机调试阶段就让人非常头痛。而Weinre就是解决这难题的利器。

简介
Weinre(WebInspector Remote)是一款基于Web Inspector(Webkit)的远程调试工具,借助于网络,可以在PC上直接调试运行在移动设备上的远程页面,中文意思是远程Web检查器,有了Weinre,在PC上可以即时修改目标网页的
HTML/CSS/Javascript,调试过程可实时显示移动设备上页面的预览效果,并同步显示设备页面的错误和警告信息,可以查看网络资源的信息,不过weinre不支持断点调试。该项目目前是 Apache Cordova 的一部分。

使用一种工具之前,了解它的原理和结构是很有帮助的。Weinre作为一种远程调试工具,在结构上分为三层:

目标页面(target):被调试的页面,页面已嵌入weinre的远程js,下文会介绍;
Debug客户端(client):本地的Web Inspector调试客户端;
Debug服务端(agent):一个HTTP Server,为目标页面与Debug客户端建立通信。

三层结构如下图所示:

http-flow

安装

weinre基于nodejs,因此首先要安装nodejs,然后使用npm进行安装:

npm -g install weinre

安装成功信息查看: weinre -v 如下图:

weinre_v

运行
启动debug server端:

weinre --httpPort 8081 --boundHost -all-

weinre_result

主要参数解析:
httpPort 调试服务器运行的端口,默认8080
boundHost 调试服务器绑定的IP地址或域名,默认localhost

启动debug client:
使用webkit的浏览器(注意:由于weinre的设计更多的是基于webkit的浏览器,因此建议使用chrome/safari)访问
weinre服务器:http://localhost:8081
获取本机ip cmd ipconfig 把上面的地址换成本机ip (http:///192.168.4.226:8081)

weinre1

启动 target:
在需要调试的页面中需要引入js文件:

<script src="http://192.168.4.226:8081/target/target-script-min.js#anonymous"></script>

当然,如果要调试的页面很多,不方便在每一页都直接插入上文的代码。可以浏览器“书签”的方式保存一下面一段js,以动态方式插入script

javascript:(function(e){e.setAttribute("src","http://10.136.30.144:8081/target/target-script-min.js#anonymous");document.getElementsByTagName("body")[0].appendChild(e);})(document.createElement("script"));void(0);

weinre2

打开debug面板:

http://192.168.4.226:8081/client/#anonymous
weinre_target

真机调试:

在debug面板中可以监听到移动设备对目标页面的访问:

weinre4
在移动设备上访问本机ip服务下的文件
http://192.168.4.226/zhongbao_1.4.2/wx/dem/userinfo/wx_show.html?open_id=sdsddddd555555

weinre5

Weinre 支持的平台:

支持的调试客户端(运行调试界面的浏览器):

Google Chrome
Apple Safari
其它基于 WebKit 的浏览器
支持的调试目标(需要调试的网站或应用的界面):

Android 浏览器应用
iOS Mobile Safari 应用
PhoneGap/Cordova
other
不支持的调试目标:

iOS 3.1.3 及更早版本
webOS 1.45 及更早版本

其它说明:
1. 用手机连续访问多页面,这些页面都会在targets中列出,选中其中一个,即可进行调试。
2. 点击调试页面中的remote, 可以从调试页面切回targets列表。
3. client要在基本webkit核的浏览器上使用(Google Chrome, Apple Safari, Other recent-ish WebKit-based browsers )。
4. server与target和client一定要能互联互通,这样才可以调试。

一些局限性:
1. elements部分,可以查看dom,修改样式。但无法直接编辑dom
2. resource部分,localstorage可以查看,但cookie看不到。
3. cosole部分,可以看console log, 运行js。但无法像firebug那样报出js的错误,更不能加断点调试。

参考文档:

http://people.apache.org/~pmuellr/weinre/docs/latest/Home.html

http://blog.csdn.net/qmhball/article/details/45848215

http://www.cnblogs.com/diva/p/3995674.html

http://www.cnblogs.com/lhb25/p/debug-mobile-site-and-app-with-weinre.html

标签: web技术 调试工具
最后更新:2025年9月13日

cywcd

我始终相信,技术不仅是解决问题的工具,更是推动思维进化和创造价值的方式。从研发到架构,追求极致效能;在随笔中沉淀思考,于 AI 中对话未来。

打赏 点赞
< 上一篇
下一篇 >

文章评论

  • 李蕾

    66666

    2016年7月1日
    回复
    • cywcd

      @李蕾 用过的都说好,

      2016年7月18日
      回复
  • 李蕾

    66666

    2016年7月1日
    回复
    • cywcd

      @李蕾 用过的都说好,

      2016年7月18日
      回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    回复 cywcd 取消回复

    cywcd

    我始终相信,技术不仅是解决问题的工具,更是推动思维进化和创造价值的方式。从研发到架构,追求极致效能;在随笔中沉淀思考,于 AI 中对话未来。

    最新 热点 随机
    最新 热点 随机
    npm 安全更新:把握令牌变更与发布体系的迁移参考指南 TresJS:用 Vue 构建现代化交互式 3D 体验 i18n 高效实现方案:前端国际化神器安利一波 前端国际化 i18n 实践:从项目到组件库的全链路方案 GEO(生成引擎优化)完整指南:AI 搜索时代的企业内容新机会 NativeScript:用 JavaScript / TypeScript 构建真正的原生应用
    前端开源工具 PinMe:极简部署体验分享大屏适配的核心痛点与一行 autofit 解决方案markdown-exit:现代化的 Markdown 解析工具Lerna + Monorepo:前端多仓库管理的最佳实践CrewAI:基于角色协作的 AI Agent 团队框架浅析2025 最推荐的 uni-app 技术栈:unibest + uView Pro 高效开发全攻略
    手机端rem适配方案 UniApp 进阶实战篇:Vue3 + Pinia + uViewPlus 构建企业级多端项目 下一代前端模块化打包利器rollup js多浏览器兼容注意写法整理 李开复:人工智能十问 Vue SSR 与 Next.js 实战指南:从原理到落地的全栈思考
    最近评论
    渔夫 发布于 1 个月前(11月05日) 学到了,感谢博主分享
    沙拉小王子 发布于 8 年前(11月30日) 适合vue入门者学习,赞一个
    沙拉小王子 发布于 8 年前(11月30日) 适合vue入门者学习,赞一个
    cywcd 发布于 9 年前(04月27日) 请参考一下这篇文章http://www.jianshu.com/p/fa4460e75cd8
    cywcd 发布于 9 年前(04月27日) 请参考一下这篇文章http://www.jianshu.com/p/fa4460e75cd8

    COPYRIGHT © 2025 蓝戒博客_智构苍穹-专注于大前端领域技术生态. ALL RIGHTS RESERVED.

    京ICP备12026697号-2