A Roadmap
  • Introduction
  • Roadmap
  • Basics
    • Basic Terminal Usage
      • Shell
        • 基本
        • 变量
        • 传递参数
        • 运算符
        • 命令
        • 流程控制
        • 函数
        • 输入输出重定向
    • Character Encoding
      • 字符编码
    • Data Structures & algorithms
    • Network
      • TCP/IP
      • Http/Https
        • 浏览器缓存
        • Status Code
        • GET & POST
        • HTTPS 握手过程
        • HostOnly Cookie
      • CDN
        • CDN 工作原理
    • Version Control
      • git message format
      • git commands
    • Principles
    • Design Patterns
    • Others
      • JSON
      • 正则表达式
  • Front End
    • Web Standard
      • Html
      • CSS
        • font-face 小记
        • Grid 布局简易笔记
      • Javascript
        • Ajax
          • Fetch
          • XMLHttpRequest
        • DOM
          • Selection
          • 常用 DOM 操作
          • script 标签的几个属性
        • Ecmascript
          • this 关键字
          • Event Loop
          • 隐式转换
          • Date
        • Event
          • 模拟事件
          • Others
    • Development
      • Package Management
        • npm
      • Modulization
        • 模块化机制
        • webpack 打包解析
      • Architecture
      • Build Tools
        • 如何编写一个自定义的 eslint 规则?
      • Debug
        • 移动端调试 web
      • Pre/Post Processors
      • Test
        • Jest Snapshot 使用指南
      • Type Checkers
        • TS 中 enum 的编译结果
    • Libs & frameworks
    • Platforms
      • Browser
        • Basics
          • 从输入 URL 到页面加载完成都发生了什么事情?
          • HTML 加载的过程示意图
          • 为什么读取某些属性,也会导致回流?
          • Chrome 进程模型
        • PWA
        • Compatible
        • Cross Origin
        • Performance
          • 性能检测:performance 对象
          • 性能指标
        • Others
          • 移动端 web 开发笔记
      • Server
      • Desktop Applications
      • Mobile Applications
        • Flutter 在移动端和 Web 端的技术实现
  • Back End
    • outline
    • Languages
      • Node
        • Event Loop
        • NodeJS 中的进程与线程
        • NodeJS 中的 esModule 与 commonJS
  • Clients
    • outline
    • 安装 IPA 包
  • DevOps
    • Languages
    • OS Concepts
    • Servers & terminal
  • UI & UX
    • outline
  • Others
    • Posts
      • 使用 node 爬取数据并导出到 excel
      • antd 1.x datepicker 时区问题
      • babel-transform-runtime 踩坑记录
      • lodash 按需加载注意事项
      • 记一次项目迁移的踩坑记录
      • 时区与JS中的Date对象
      • 记一次 vue + ts 开发踩坑
    • Tools
      • 个人常用的工具分享
      • tmux 简要笔记
Powered by GitBook
On this page
  • 1. Chrome remote device
  • 2. Mac Safari
  • 真机测试
  • Simulator
  • 3. 腾讯TBS
  • 4. 微信web开发者工具
  • 移动端调试工具

Was this helpful?

  1. Front End
  2. Development
  3. Debug

移动端调试 web

PreviousDebugNextPre/Post Processors

Last updated 6 years ago

Was this helpful?

移动端开发浏览器调试的方式很多,可以参考

调试工具包括chrome remote device, safari等。

1. Chrome remote device

适用于一般的页面和webview,大部分的浏览器均可调试。通过USB连接电脑即可,谷歌官方有详细的介绍,可以参考。

QQ browser、钉钉、微信中webview的页面一般无法用chrome remote device进行调试。

不过不是真机调试,算是用Chrome模拟的。

2. Mac Safari

真机测试

在iOS设备上的Safari浏览器中打开要调试的页面,然后切换到Mac的Safari,在顶部菜单栏选择“开发”→找到你的iOS设备名称→右边二级菜单选择需要调试的对应标签页,即可开始远程调试

Simulator

mac系统中通过模拟器可以直接进行真机测试,需要安装Xcode,启动模拟器后选择一个具体的设备,在模拟器中的safari访问页面;然后启动mac中的safari(需要开启开发者选项),重复重复上个步骤。

3. 腾讯TBS

可用于模拟QQ browser、微信等X5内核的浏览器页面,详细可以访问。十分强大的调试工具。

我在开发过程中遇到过手机(锤子 Smartisan M1/ 小米 Mi 4c)无论如何都没法连接到mac TBS studio的问题。后来发现需要手动安装Android adb工具,让手机为电脑授权。

  • ANDROID_SDK_PATH=/Users/lcc/Android/
    export ANDROID_SDK_PATH
    export PATH=$PATH:$ANDROID_SDK_PATH/tools:$ANDROID_SDK_PATH/platform-tools
  • 通过usb连接手机后,启动adb的转发服务,也可以自定义端口

       adb forward tcp:9988 tcp:9988
  • 在手机弹出的授权页面上为当前电脑授权,然后在TBS studio里即可正常连接。

4. 微信web开发者工具

但是仅适用于能够安装TBS内核的手机。我使用锤子M1手机开发时遇到过无法安装TBS内核的问题。TBS的安装也是一个大坑,建议还是使用腾讯的TBS Studio调试微信。

移动端调试工具

下载。下载sdk-tools和sdk-platform-tools,并且配置环境变量。

微信自己推出的调试工具,在有比较详细的介绍。

微信团队实现的工具库,在手机端模拟console的信息控制,可以方便的打印调试信息。但是一些代码错误有时候会捕捉不到。

各种 真机远程调试 方法 汇总
远程调试 Android 设备使用入门
腾讯浏览服务 TBS studio
Android SDK 命令行工具
微信公众平台
v-console