Android WebApp开发使用Genymotion连接Fiddler2/Charles代理调试
1. 目的
在模拟器的浏览器或app hybrid开发中遇到chrome调试代码为线上代码或者混淆代码时,可以利用fiddler/charles为genymotion配置代理,
可以方便的将代码替换为本地代码,此外还可以针对访问服务进行截获分析。
2. 配置
2.1 配置fiddler本地代理
2.1.1 Tools->Option->Connections
选中Allow remote computers to connect,并设置端口号(默认8888),如下图:

2.1.2 Tools->Option->HTTPS
选中Caputure HTTPS Connects,并且勾选Ignore server certificate errors,如图:

2.1.3 设置站点过滤
在fiddler右侧->Filters,勾选User Filters,在配置好genymotion代理后,访问www.baidu.com,如图:

2.2 配置genymotion代理参数
2.2.1 进入wifi设置,长按genymotion连接的wifi,弹出修改连接参数的对话框,如图:

2.2.2 设置wifi代理ip和端口
注意:android和genymotion模拟器中填写的代理ip不能是fiddler所在PC的IP,因为模拟器和PC不在同一个网段,
默认情况下,android模拟器中10.0.2.2代表PC,genymotion模拟器中10.0.3.2代表PC。Genymotion设置如图:

2.3 配置真机代理参数
先将真机连接到PC所在的同一局域网,真机代理IP为PC的IP。如图:

2.4 genymotion安装fiddler证书
如果在genymotion中访问https站点,需要在模拟器中安装fiddler证书。当在模拟器中配置好代理后,可访问代理站点下载证书。
在模拟器浏览器中输入http:10.32.82.50:8888(fildder所在PC的IP和fiddler代理端口号),代开代理站点后,点击FiddlerRoot certificate下载证书。
因为在WIFI上设置的代理,这里选择WIFI。


3. 配置本地站点(Ctrip H5站点专用,本地服务器nginx/apache搭建可参考其他文章)
3.1 配置IIS站点
配置与线上环境一致的站点路径,如线上路径为https://secure.ctrip.com/webapp/wallet,
具体配置图如下:

配置完成后,为本地站点绑定https 443端口,其中需要制作本地自签名https证书,如图:


3.2 配置host文件
在host文件将线上域名替换成本机,如图:

4. Genymotion中app内访问测试(Ctrip HybridApp专用,其他请看第5点)
App中调试代码需要依赖lizard grunt打包程序,命令如下:
grunt package2.0 --path=%Wallet_App%\Wallet --debug
使用debug打包时,需要修改gruntCfg.js中的相关配置,主要是host参数,配置成本机IP和port。如host: "10.32.82.50:80"。
Host参数主要是配置打包生成时webresource的所在的站点,debug模式打包不生成webresource目录,而是直接在lizardlocalroute.js中将路由指向本机webresource路径。
将打包生成的文件push到模拟器中即可调试。
首页调试源码:

Fiddler拦截信息:

5. Genymotion中浏览器测试(所有WebApp都可用)
首页调试源码:

Fiddler拦截信息:

6. 结语
通过以上的配置,可以基本解决调试过程中遇到的代码混淆问题,还你一个熟悉的代码环境。
Android WebApp开发使用Genymotion连接Fiddler2/Charles代理调试的更多相关文章
- Android高效开发环境(Genymotion,Gradle,Andriod Studio)
临近十一,项目接近上线,终于有些碎片时间可以查看一些博客. 这篇博客是Android开发大牛Cyril Mottier在去年写的博客,我把它翻译一下共享给国内志同道合的朋友,同时也是对自己一个很好的锻 ...
- android网络开发之测试机连接到服务器上面
1:本人使用Tomcat作为服务器软件,首先打开Tomcat.(可以在浏览器中输入http://www.127.0.0.1:8080/查看) 2:服务器后台使用Servelt开发,这里不再讲解. 3: ...
- 如何实现android蓝牙开发 自动配对连接,并不弹出提示框
之前做一个android版的蓝牙 与血压计通讯的项目,遇到最大的难题就是自动配对. 上网查资料说是用反射createBond()和setPin(),但测试时进行配对还是会出现提示,但配对是成功了 我就 ...
- vue-cli 前端开发,后台接口跨域代理调试问题
使用 webpack的方式开发的时候,前台开发过程中需要调用很多后台的数据接口,但是通常前后台分离的开发方式,后台的接口数据很可能是不方便或者是不能在前端同学的电脑上运行的,也就出现了所谓的跨域问题. ...
- 【Android 应用开发】Android之Bluetooth编程
Android Bluetopth 编程大牛文章 http://my.oschina.net/u/994235/blog?catalog=313604 ViewGroup 相关资料 : http:// ...
- Android WiFi开发教程(二)——WiFi的搜索和连接
在上一篇中我们介绍了WiFi热点的创建和关闭,如果你还没阅读过,建议先阅读上一篇文章Android WiFi开发教程(一)——WiFi热点的创建与关闭. 本章节主要继续介绍WiFi的搜索和连接. Wi ...
- 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行
需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行 实现步骤: 打开 Android Studio,创建一个 Andr ...
- 安装并配置 Android Studio 开发工具和 Genymotion 模拟器
需求说明: 安装并配置 Android Studio 开发工具和 Genymotion 模拟器. 熟练使用 Genymotion 模拟器,掌握 Genymotion 模拟器的基本设置和程序安装. 实现 ...
- 【转】android蓝牙开发 蓝牙设备的查找和连接
1. 首先,要操作蓝牙,先要在AndroidManifest.xml里加入权限 // 管理蓝牙设备的权限 <uses-permissionandroid:name="android. ...
随机推荐
- Thymeleaf 集成spring
Thymeleaf 集成spring 如需先了解Thymeleaf的单独使用,请参考<Thymeleaf模板引擎使用>一文. 依赖的jar包 Thymeleaf 已经集成了spring的3 ...
- Backbone.js学习之一
昨天一个我崇拜的朋友,徐飞送我一本名为<Backbone.js实战>书,让我心中狂喜,于是带着这份浓厚的兴趣,开始研究Backbone.js之路. 打开这本书的第一句话就很有哲理,“授人以 ...
- gridview自定义排序
效果如图: 首先允许排序:AllowSorting="True":开启gridview的排序事件onsorting="GridView1_Sorting",也可 ...
- Buy the Ticket{HDU1133}
Buy the TicketTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- 20145304 Java第三周学习报告
20145304 <Java程序设计>第三周学习总结 教材学习内容总结 1.定义类: 类定义时使用class关键词,建立实例要使用new关键词. 代码如下: /*定义类 书上例子 衣服的型 ...
- ubuntu 安装Firefox 29.0
下载Firefox 29.0 % cd ~/Downloads % sudo cp firefox-29.0.tar.bz2 /opt % cd /opt % sudo tar -xvjf firef ...
- ACM Longest Repeated Sequence
Description You are given a sequence of integers, A = a1, a2, ... an. A consecutive subsequence of A ...
- ACM 国王的魔镜
国王的魔镜 时间限制:3000 ms | 内存限制:65535 KB 难度:1 描述 国王有一个魔镜,可以把任何接触镜面的东西变成原来的两倍——只是,因为是镜子嘛,增加的那部分是反的. 比如一 ...
- HDU 4741 Save Labman No.004(计算几何)
题目链接 抄的模版...mark一下. #include <iostream> #include <cstring> #include <cstdio> #incl ...
- 内存和flash存储的区别
http://bbs.21ic.com/icview-202550-1-1.html 一.内存 我们一般说的内存指的是DRAM,其主要特点是断电会丢失数据,可读写 二.ROM 断电不会丢失数据,数据只 ...