iOS 模拟器调试大法了解一下?

栏目: IOS · 发布时间: 6年前

内容简介:转自IMWeb社区,作者:HuQingyang,原文链接前段时间,老板说:iPhone 又出了那么多新机型,你搞下兼容吧。我:测试机呢?老板说:没有。我:???这让我十分为难,毕竟巧妇难为无米之炊,于是我只好使出绝招:模拟器大法!

转自IMWeb社区,作者:HuQingyang,原文链接

前段时间,老板说:iPhone 又出了那么多新机型,你搞下兼容吧。我:测试机呢?老板说:没有。我:???

iOS 模拟器调试大法了解一下?

这让我十分为难,毕竟巧妇难为无米之炊,于是我只好使出绝招:模拟器大法!

一. 安装 & 启动

首先需要安装 Xcode,安装完毕后,在终端中运行 xcode-select --install 安装 Command-line-tools。

安装完毕后搜索 Simulator ,或者按 Command+Shift+G , 输入 /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app ,便可运行模拟器。

你也可以使用命令行来管理和启动模拟器:

  • 运行 xcrun instruments -s 列出可用的 iOS 模拟器:
  • 运行 xcrun instruments -w XXX 启动模拟器
    iOS 模拟器调试大法了解一下?

Simulator 默认只有最新的 iOS 版本的模拟器,如果你需要在老版本的 iOS 上调试,可以这样安装更多版本。

  • 首先进入设备管理:
    iOS 模拟器调试大法了解一下?
  • 点击左下角的加号,选择 Download more simulator runtime
    iOS 模拟器调试大法了解一下?

二. 配置代理

我们在调试的时候,需要把模拟器的网络请求代理到我们的 dev-server。这里大力推荐使用强大的 Whistle 配合 Proxifier 来实现。

首先安装 Whitle,运行 w2 start ,访问 http://127.0.0.1:8899 ,配置好 dev-server 的代理。

然后运行 Proxifier,把模拟器请求转发的 Whistle。 首先添加一条 Action 规则代理到本地 8899 端口:

iOS 模拟器调试大法了解一下?

然后新建一个规则,把 Simulator; "Xcode Server Builder”; "MobileSafari”; “com.apple.WebKit.Networking”; 添加到 Applications:

iOS 模拟器调试大法了解一下?

这时,在模拟器中访问我们要调试的页面,检查一下 Whistle,请求都走到本地,代理配置成功!

iOS 模拟器调试大法了解一下?

PS:第一次使用 Whistle 代理时需要安装并信任证书,具体参考Whistle 文档。

三. 开始调试

  • 首先在模拟器中启动 Safari,打开调试的页面
  • 然后在 Mac 上启动 Safari,在首选项中启用开发菜单
    iOS 模拟器调试大法了解一下?
  • 模拟器访问需要调试的页面,在开发菜单中找到我们的页面:
    iOS 模拟器调试大法了解一下?
  • 就可以愉快的玩耍了!
    iOS 模拟器调试大法了解一下?

四. WebView 调试

除了直接调试 Safari 中的页面,我们还可以借助模拟器调试 APP 中的 Web 页面。可以在 APP 中直接打断点、走单步调试等等,从此跟 eruda 等手动打 log 的调试器说拜拜~

首先我们需要客户端同学给模拟器打一个 .app 包,把包拖到模拟器安装。然后启动 APP,访问要调试的 Web 页面,如法炮制,如图,就可以愉快的玩耍了~

iOS 模拟器调试大法了解一下?

PS: 打给 iPhone 的 .app 包不能直接给模拟器使用(会闪退),因为模拟器是运行在 X86 指令集上的,需要专门打包。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

IT不再重要

IT不再重要

(美)尼古拉斯·卡尔 / 闫鲜宁 / 中信出版社 / 2008-10 / 29.00元

在这部跨越历史、经济和技术领域的著作中,作者从廉价的电力运营方式对社会变革的深刻影响延伸到互联网对我们生活的这个世界的重构性影响。他批判式的认为,企业想应用网络或应用程序,不再需要自建资料中心、自组IT团队维护和管理系统,因为互联网就像自来水或电力一样,可由专门公司提供服务,你可以付费使用。而如果他的设想真的会实现,我们的世界将会变成什么样子?IT产业的命运又将如何?这又对企业的IT领域投资产生什......一起来看看 《IT不再重要》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具