最近在找关于在xcode上调试Hybrid应用的方法,比如我想进行断点调试、日志打印、屏幕适配等等,刻意去搜了下方法,虽然之前已经大致知道了,这里系统归纳一下,原文在https://developers.redhat.com/blog/2017/07/12/how-to-debug-your-mobile-hybrid-app-on-ios/,配图还是用的文中的配图,这里只是翻译一下。

正如你所知,有时候在一个手机设备上调试程序是一件非常困难的事。对于Android和网页应用来说,我们有Chrome Developer tools,这也是我们通用的方式,那么对于IOS来说,我们也有相似的方式,那就是Safari Web insepctor

随着IOS 6和 Safari 6的发行,苹果也发布了网页检查器来调试和创建网页,这就意味着我们可以在我们的电脑上看到我们手机中运行的程序到底是在怎么进行的,并且对其进行调试,下面就让我来详细地解析一下整个环境的搭建。

提示:你得先有一台Mac电脑。

系统要求

  • MacOSX Lion version 10.7.4 or greater
  • Certified USB Cable
  • Safari 6
  • Device / Emulator
  • XCode 4.5 or later with iOS 6 SDK or later

开启开发者选项

电脑上的Safari配置

1. 打开Safari(图中第一步)然后点击左上角工具栏中的Safari(图中第二步)

2. 点击偏好设置(Preferences)

3. 点击高级【Advanced】(图中第1步),然后开启勾选在菜单栏中开启"开发"选项【Show Develop menu in menu bar】(图中第2步)

4. 关闭窗口,你就可以在safari的工具条上看到“开发”【Develop】这个选项了

设备上的Safari配置

要想你的手机被调试,你还需要在手机上进行如下几步设置。

1. 点击设置,找到Safari

2. 点击进入,向下滑动直到找到高级选项【Advanced】

3. 开启检查器开关【Web Inspector】

在设备上运行项目

当我们配置好了以上的设置,然后就需要把APP的源码down下来,我们就可以在我们的设备上运行项目了。

1. 使用USB连接电脑,打开xcode,运行项目

2. 如果程序在你的手机上正常打开了,就可以打开电脑上的safari,然后点击“开发”【Developer】选项

3. 这就会在开发工具上新开一个窗口

开发工具解析

网络(Network)

资源(Resources)

这个部分会列举所有在App上的资源,你可以浏览它们

时间轴(Timelines)

你可以查看你的App加载、网络请求、布局渲染以及javascript事件执行总共花了多少时间。这在你对App有较高性能要求的时候会显得很有用处。

调试器(Debugger)

类似于Chrome的调试工具,在这里你也可以进行单步、断点调试。这里不在赘述,想了解更多可以自行Google

本地存储(Storage)

控制台(Console)

在这里,你可以进行信息的打印以及命令的执行等等。

如何在IOS上调试Hybrid应用的更多相关文章

  1. fir.im Weekly - 如何在 iOS 上构建 TensorFlow 应用

    本期 fir.im Weekly 收集了最近新鲜出炉的 iOS /Android 技术分享,包括 iOS 系统开发 TensorFlow 教程.iOS 新架构.iOS Notifications 推送 ...

  2. 如何在windows上调试安卓机谷歌浏览器上的页面

    - 下面的方法仅在windows和安卓机上测试过,,,, - 手机(安卓机)需要安装chrome与电脑(Windows)上的chrome配合,也就是只能调试谷歌浏览器上的页面 1.手机的准备工作 打开 ...

  3. 如何在iOS上实现对HTTPS的支持(转)

    原文地址:http://blog.5ibc.net/p/101504.html 首先,需要明确你使用HTTP/HTTPS的用途,因为OSX和iOS平台提供了多种API,来支持不同的用途,官方文档< ...

  4. ios webapp调试神器MIHTool

    android平台有直接用chrome beta就可以调试,具体操作办法可以查看这篇教程<Android 设备 Chrome 远程调试>Mac的高富帅直接可以用safari提供“web检查 ...

  5. iOS学习——如何在mac上获取开发使用的模拟器的资源以及模拟器中每个应用的应用沙盒

    如题,本文主要研究如何在mac上获取开发使用的模拟器的资源以及模拟器中每个应用的应用沙盒.做过安卓开发的小伙伴肯定很方便就能像打开资源管理器一样查看我们写到手机本地或应用中的各种资源,但是在iOS开发 ...

  6. 如何在iOS地图上高效的显示大量数据

    2016-01-13 / 23:02:13 刚才在微信上看到这篇由cocoachina翻译小组成员翻译的文章,觉得还是挺值得参考的,因此转载至此,原文请移步:http://robots.thought ...

  7. [ios3-地图] 如何在iOS地图上高效的显示大量数据 [转]

    [转至:http://blog.csdn.net/pjk1129/article/details/17358337] 原文:How To Efficiently Display Large Amoun ...

  8. 转 如何在IOS设备中去掉屏幕上的status bar

    引入如何在IOS设备中去掉屏幕上的status bar,即:不显示设备上方的[网络.时间.电池??]条?操作方法一:在-info.list项目文件中,加上“Status bar is initiall ...

  9. ios那些事之如何在ios5上运行gdb

    为啥要在ios上运行gdb? 这个问题见仁见智喽.对于搞开发的同学们来所, 有了gdb更方便跟踪分析别人的程序,取长补短:)这里不是教大家crack:) 运行环境: Mac OS 10.7.4 Xco ...

随机推荐

  1. 【linux】linux下网络的配置

    linux网络的配置 一.配置网络vi  /etc/sysconfig/network 配置网络vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE= ...

  2. R语言︱文本挖掘套餐包之——XML+SnowballC+tm包

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言︱文本挖掘套餐包之--XML+tm+Sn ...

  3. 利用PowerDesigner15在win7系统下对MySQL 进行反向工程(三)

    利用PowerDesigner15在win7系统下对MySQL 进行反向工程 1.选择"数据库-->Generate Database...",查看数据库表的SQL语句 2. ...

  4. freemarker中的substring取子串

    freemarker中的substring取子串 1.substring取子串介绍 (1)表达式?substring(from,to) (2)当to为空时,默认的是字符串的长度 (3)from是第一个 ...

  5. CSS的继承性与优先级

    一.CSS的继承性 在CSS中不可继承的属性:display.margin.padding.border.background.width.min-width.max-width.height.min ...

  6. 【原】从零开始改造淘淘商城(引入dubbo解决项目耦合)02

    前言: 关于为什么要引入dubbo框架,而不是用spring cloud或者是motan呢,主要是笔者现在公司用的就是dubbo,并且第一次接触到微服务的概念是来源于dubbo,再加上最近dubbo频 ...

  7. banner图片轮播

    html部分                           版本号   <script src="http://www.jq22.com/jquery/jquery-1.10.2 ...

  8. WPF基础篇之控件模板(ControlTemplate)

    WPF中每一个控件都有一个默认的模板,该模板描述了控件的外观以及外观对外界刺激所做出的反应.我们可以自定义一个模板来替换掉控件的默认模板以便打造个性化的控件. 与Style不同,Style只能改变控件 ...

  9. Android集成百度地图详细步骤和错误问题

    先看要实现的效果 第一步, 下载SDK,基础配置,百度开发文档很详细,直接附上链接http://lbsyun.baidu.com/index.php?title=androidsdk/guide/cr ...

  10. [BZOJ3223] [Tyvj1729] 文艺平衡树 (splay)

    Description 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3  ...