利用charles映射解决夜神模拟器安装xposed
最近在玩xposed框架,前前后后搞了两天,浪费一个周末,总算把踩过的坑都捋了一遍。。
比如大家肯定遇到的的一个问题:夜神模拟器打开xposed安装器之后,为什么下载不了xposed-v89-sdk25-x86.zip这些框架包呢?
因为访问地址已经由http变成https,原来的地址已经失效。
通过charles抓包可以得知,在xposed安装器界面下拉的时候(图一),都会有一条这样的请求(图二)
图一
图二
这条请求:http://dl-xda.xposed.info/framework.json,就是通过它去访问框架包的下载地址
但xposed地址已经变成https,会一直下载失败。。
下拉刷新完毕,会出现以下界面,我们点一下,尝试着下载89版本,然后看看charles的请求。
好,我们基本知道有两个请求地址的,分别是:
请求框架包路径:http://dl-xda.xposed.info/framework.json
下载框架包:http://dl-xda.xposed.info/framework/sdk22/x86/xposed-v89-sdk22-x86.zip
下一步我们要通过charles映射,把http指向https
打开charles-Tools-Map Remote Settings,设置远程映射
由http://dl-xda.xposed.info/framework.json,
指向https://dl-xda.xposed.info/framework.json
保存,
然后设置本地映射,打开charles-Tools-Map Local Settings
其中,F:\xposed-v89-sdk22-x86.zip是你本地存放框架包的路径。
那问题又来了,我的这个xposed-v89-sdk22-x86.zip是哪里得来的呢?
其实是通过https://dl-xda.xposed.info/framework/下载得到的,如下图:
自己下载框架包之后,放在C盘或D盘根目录,我是放F盘根目录的。
设置本地映射,原本是通过http://dl-xda.xposed.info/framework/xposed-v89-sdk22-x86.zip去下载包,那我现在直接让它去F:\xposed-v89-sdk22-x86.zip下载。
远程映射、本地映射都设置好了,
打开夜神模拟器,打开xposed安装器,下拉,点击Version 89,install,注意了,因为设置了本地映射,这时候的xposed安装器是直接访问我的F盘根目录,下载本地的框架包,所以你会看到它的下载是很快的,一瞬间就完成。
你看,本地下载特别快,直接进入安装界面了!(选择永久授权)
安装好,重启模拟器
重启,再打开xposed安装器,可以看到框架已经激活了!
-
-
- -分割线 - - -
-
charles的原理其实就是,当我们需要访问某些网站、外网的时候,访问不成功,那我们可以通过映射,更改访问地址为自己的本地,
比如上面说的,原本是去http://dl-xda.xposed.info/framework/xposed-v89-sdk22-x86.zip下载框架包的,现在指向F盘下载。