首页 >知识讲堂 >网站建设知识>干货:远程调试以及针对iOS和Android平台的具体调试方法

干货:远程调试以及针对iOS和Android平台的具体调试方法

2020-12-30 10:18:57 阅读(150 评论(0)

将静态资源指向本地Mobile越来越重要,Hybridapp越来越受欢迎,但在手机上调试网页并不像在电脑上那么容易。大约半年前,我开始转向MobileWeb的发展,在调试方面做了很多尝试,最近慢慢与大家分享。开发过程离不开调试,尤其是前端开发,几乎边调试边开发。调试的第一步:让浏览器/webview直接要求您的本地源码PC端体验如何实现目标?相信大家在做PCWeb开发的时候都接触过以下解决方案:编辑本地hosts文件,将静态资源域名指向本地,在本地建立静态资源HTTP服务器,让浏览器直接输入本地源代码。在本地建立代理服务器,将浏览器代理设置为代理服务器,并根据代理服务器中的规则直接读取本地源代码返回浏览器。例如,nproxy可以满足此类需求。Autoresponder功能采用Fiddler。事实上,这种方法和上一种方法是一样的,Fiddler是一种非常强大和免费的GUI工具,很容易使用。利用模块加载器提供的debug功能对本地资源进行在线资源映射,如seajs-debug。所有这些任务都是让浏览器直接要求您的本地源代码。只要我们这样做,我们就可以在编辑器中更改代码,刷新浏览器,立即看到更改后的效果,避免繁琐的代码部署操作。移动终端的移动终端方案应该怎么做?无非是实现同样的目标:让手机浏览器/webview直接输入我们工作计算机上的源代码。让我们来看看这些常用的PC方法是否仍然适用于手机。编辑hosts计划在PC上编辑hosts文件时,要注意管理员权限需要在WIN7/8系统上,在Mac/Linux下,root权限需要。这确实是一个非常安全和敏感的文件。因此,在手机上编辑这些文件也需要root权限。这意味着iOS需要越狱,Android需要root。我觉得这个方案在手机上是不可取的,很难在手机上编辑hosts。你不能保证每台开发机都有root权限。调试兼容性时,遇到不能root的机器怎么办?在iOS上配置系统的HTTP代理服务器非常容易使用代理方案(包括自建proxyserver和fidler)。大多数安卓机器也可以配置,但不同型号的菜单位置不同。剩下的要做的就是把一些文件代理到本地,就像在PC上一样。使用这个方案可能会遇到的问题是:自建proxyserver一般与HTTPS兼容性不够好。对于Hybridapp,native部分的一些请求可能是HTTPS,webview中的页面是HTTP。HTTPProxy设置后,所有请求都必须通过该代理服务器。如果HTTPS的支持不够好,则可能无法登录。这一点要赞Fiddler,处理得很好。此外,Mac用户可能没有太好的Fidler替代品,Charles是收费的,也不如Fiddler好用。使用模块加载器提供的debug功能通常需要在页面上输入一些东西来完成资源映射。在手机上输入文本太麻烦了,屏幕太小,不容易显示这些内容,所以这个方案不好。综上所述,使用代理服务器的方案可以从PC端沿用到移动端。但正如我们上面所说,使用代理服务器也有一些缺点,那么绑定hosts的效果能在手机上无痛地实现吗?答案是肯定的。绑定hosts只会改变域名的分析结果,正常情况下,域名是由谁来分析的?DNS!我们只需要在开发计算机上运行一个特殊的DNS服务器,然后将手机网络配置中的DNS改为开发计算机的IP。在DNS服务器中做一些手脚,将静态资源域名分析到开发计算机上,就能达到与编辑hosts文件完全相同的效果。与修改代理服务器相比,在手机上修改DNS服务器地址非常容易。为了实现这一点,我写了一个非常方便配置的DNSServer:xdns,与hosts文件的语法兼容,同时提供了比hosts文件更先进的语法。例如,xdns支持域名使用通配符模式。支持IP地址使用网卡接口名作为占位符,在运行过程中可以自动替换到网卡接口上的IPV4地址,这样当您的开发计算机IP发生变化时,就不需要修改配置文件。安装和启动非常方便,使用Node.js开发,Node应该熟悉前端。npm安装后,可以启动一个命令。具体请参阅文档:xdns。在使用桌面浏览器开发时,几乎每个浏览器都有自己的开发工具,比如常用的firebug,chromedevelpertools,safaridevelopertools.即使是IE甚至IE6,也有自己的开发工具。我们使用这些工具来检查调试样式javascript,查看修改cookie,查看网络请求等。大家都很熟悉这些。由于屏幕太小,手机端的浏览器或webview无法在手机上集成developertols。幸运的是,主要制造商仍然非常关注开发商的便利性,现在有各种远程调试计划。也就是说,在手机上加载页面,在电脑上显示调试工具。让我们来看看一些主流工具。iOS平台1.SafariMobilesafari支持远程调试,需要做以下步骤:在手机中找到设置->safari->高级->打开此功能的Web检查器。将数据线连接到您的Mac(没有Mac)去找老板!)。打开Mac下的safari,在偏好设置中,在高级栏的底部,检查菜单栏中显示“开发”菜单,用手机safari访问一个网页,在mac上的safari开发菜单中找到你的手机,在二级菜单中找到这个网页,然后进入熟悉的safaridevelopertols,调试css,js网络请求等。2.在iOSwebviewiOSAPP中,webview也支持远程调试,但有更多的限制。这个APP必须自己编译安装在手机上,也就是说,你必须有iOS开发者账号。开发HybridAPP并不难,团队必须有开发者账号。您需要做的是了解一点iOS开发基础,至少可以自行将代码编译安装到您的手机上。对于自己编译的APP,只需将要调试的页面加载到APP中,其他步骤与safari的远程调试相同。Android平台1.chromemobilechromeforandroid32和后续版本具有远程调试功能。您需要做的是打开android的USB调试功能。将USB连接到您的电脑上(Windows用户需要安装Android驱动器)。在Chromeforandroid上打开要调试的网页。在电脑上打开chrome(最低也需要32个版本),进入菜单->工具->检查设备页面,确保检查DiscoverUSBdevices。如果设置正确,现在可以看到手机上打开的页面。点击inspect进入熟悉的chromedevelpertols。由于Android手机种类繁多,如遇麻烦,请仔细阅读官方文件2.WebviewAndroid4.从4开始,默认浏览器已经是chrome了,所以webview也是chrome,这给了webview远程调试的能力。在Android中,我们需要为Webview做以下设置:Javacode将内容复制到剪贴板ifew(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {      WebView.setWebContentsDebuggingEnabled(true);  }  然后在你的应用程序中打开要调试的页面,远程调试的其余步骤与使用ChromeforAndroid相同。3.使用Android模拟器,鉴于目前Android4.4的手机还比较少,可以选择使用模拟器进行调试。3.使用Android模拟器。由于Android4.4的手机仍然很少,您可以选择使用模拟器进行调试。官方模拟器太慢了。建议您使用genymotion和X86架构的模拟器。速度与真正的机器没有什么不同。对于只进行webview调试的前端,只需使用个人免费版即可。4.其他方法,如果您的调试条件不能满足上述任何一种,也可以使用weinre。只需在页面中插入一个脚本,就可以进行远程调试,基本上没有其它限制。但使用这个也有明显的缺点:不能给javascript中断点,基本上只能使用console调试不支持查看元素的风格写在css的第一行,也不支持显示哪个文件通过网络连接,所以在调试移动网络时,不容易操作(需要服务运行在移动网络可以访问的机器上),weinre只适用于当你不能使用safari或chrome进行远程调试时,聊天总比没有好。在调试androidhybridAPP时,经常会遇到这种情况。综上所述,您可以根据下图选择最佳调试方案:由于我目前只接触IOS和Android平台的开发和调试,其他移动平台不了解,本文不涉及windowsphone等平台。综上所述,您可以根据下图选择最佳调试方案:由于我只接触IOS和Android平台的开发和调试,其他移动平台不了解,本文不涉及windowsphone等平台。欢迎留言或电子邮件交流各种远程调试方案。

以上就是关于干货:远程调试以及针对iOS和Android平台的具体调试方法的相关介绍,更多干货:远程调试以及针对iOS和Android平台的具体调试方法相关内容可以咨询我们或者浏览页面上的推荐内容。我们将让你对干货:远程调试以及针对iOS和Android平台的具体调试方法有更深的了解和认识。

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

autodesk material library可以卸载吗

Autodesk桌面应用程序有什么用,能卸载吗?Autodesk桌面应用程序这个软件其实没什么用!可以卸载!1.退出Autodesk桌面应用程序:在系统托盘中,右键单击。单击“退出”。2.卸载Autodesk桌面应用程序:依次单击“开始”和...查看详情

苏宁易购和京东商城有什么不同点?

京东买手机靠谱还是苏宁易购靠谱?个人肯定是建议买京东,因为京东的售后服务,物流配送都会非常的快,苏宁相对于京东来说,已经算一个比较小的平台,而且配送服务基本上属于外包给第三方的快递公司,配送质量和配送速度都没有保障…查看详情

推广在哪个平台推比较好?这些平台可以尝试一下

  相信很多创业者都存在这样的困扰,有了项目,有了产品,却不知道怎样能让市场快速接受,正所谓“酒香也怕巷子深”,下面小编就来盘点一下推广在哪个平台推比较好这一块的内容。希望能帮助到大家!网络处处能推广,关键在于找…查看详情

html怎么设置网页背景

如何在html中插入整个页面的背景图?用Dreamweaver软件编辑一、打开Dreamweaver,然后选中html,出来了一个html标准文档。二、在在html中插入整个页面的背景图?在html中插入整个页面的背景图的方法如下:1、打开...查看详情

mybatis和hibernate的区别

mybatis缓存分类及实现方法?Mybatis与Hibernate一样,支持一二级缓存。一级缓存指的是Session级别的缓存,即在一个会话中多次执行同一条SQL语句并且参数相同,则后面的查询将不会发送到数据库,直接从Session缓存中...查看详情

2021抖音最火音乐排行榜,看有哪些是你熟悉的BGM

个别音乐歌曲备受人民群众的钟爱,在众多软件快速最火了起來,成为人人皆知的音乐歌曲,那些音乐歌曲促进了身边的开场,使人们多了点欢乐,接下去的几首歌音乐歌曲,喜爱音乐歌曲的网民适合关注起來!1.《爱人错过》是潘云安、告五…查看详情

efi系统分区有什么用

EFI(ExtensibleFirmwareInterface)系统分区是计算机硬盘上的一小块空间,用于存储引导和固件配置信息。EFI系统分区:简化引导和提供固件配置 在现代计算机系统中,EFI系统分区起着至关重要的作用。它不仅简...查看详情

2017第六届蓝海基业BOSS会晚间新闻

经过120天的不懈努力,来自全国各地的英雄们克服无数艰难险阻,终于在11月1日,胜利会师总部成都,正式开启了第六届蓝海基业BOSS的旅程。 极具科技感的签到,正式拉开了本届BOSS会的序幕。 短暂休整过后,就开启了今天的...查看详情

随机抽号app

有没有软件可以。我自己输入几个数字,然后随机选数字的软件啊?可以试一下这款抽号软件,由本人自主开发,Win8风格,多种抽取模式,系统设置里面可以任意修改抽取范围。希望你喜欢。在手机上如何设置随机抽号?登录交管12123APP,在【业…查看详情

如何选择简单的crm系统?这几款可以参考

随着crm系统带来的管理和销售效率,越来越多的企业开始引进crm系统。然而每个crm厂商的侧重点与目标客户群体的不同,企业在选择crm时容易混淆,不仅怕复杂的crm系统无法操控,还怕花了冤枉钱,所以接下来小万为大家介绍2019年最受欢迎的…...查看详情

制作图片的软件app哪个好?制作图片的软件app推荐

平时用到图片的时候就应该要对图片进行制作,通过制作才会让整个图片变得更加精致,才能够得到更好的使用,效果也是比较好的,所以说制图软件一定不能少。平时的时候使用手机的频率比较多,所以说下载一款制作图片的软件app也是非…查看详情

客户管理软件哪个好用?这几款是不错的选择

有些企业在发展的过程当中会有很多的客户,如果对客户进行记录的话,就是一个麻烦的事情,但是想要对客户进行更好的维护就应该要做好客户管理,所以说这个时候一款客户管理软件就显得十分重要,找到一款好的客户管理软件,才能够…查看详情

淘宝运费险是什么意思?有什么作用?

  优质答案(1)  淘宝商家赠送的运险费,意思是收货后想退货(最好先和商家达成退货协议),你寄回去的运费由你先垫付后,在退货完成后由保险公司赔付你的运费。  保险公司是按投保规定赔付你的运费,可能和你实际花的运费…查看详情

伦勃朗光怎么打

伦勃朗的绘画特点是什么?荷兰伟大的油画家伦勃朗,以其精湛的绘画技艺和独具特色的油画语言,特别是在"光"、"色"、"笔触"、"肌理"等探索方面达到了极高的水平,对...查看详情

开公司好还是个体户好

  对于很多人来说,开公司和成为个体户都是一种很好的工作选择。虽然两者都可以让你独立工作,但它们之间也有一些差别。在选择开公司或成为个体户之前,应该先了解两者的优缺点,然后根据自己的需求和目标来做出选择。在本文中…查看详情

首页

产品

万商学院

客户服务

会员中心

当前站点

h

选择站点

全国站成都

一 客户顾问-张三

已为0个客户提供专业互联网服务咨询
  • 手机号码
  • 验证码图形验证码换一张
  • 短信校验码

    电话咨询

    在线咨询