IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 【Xposed】框架安装full.xml.gz下载失败解决方法总结 -> 正文阅读

[移动开发]【Xposed】框架安装full.xml.gz下载失败解决方法总结

设备信息:
雷电模拟器4.0版本
Android7.1.2(Nougat, API 25)
x86

一. 问题介绍

在Android模拟器上安装xposed框架时,安装好后打开出现如下问题:

下载http://dl.xposed/info/repo/full.xml.gz失败:unexpected end of stream on Connection{dl.xposed.info:80, proxy=DIRECT@ hostAddress=45.55.233.97 cipherSuite=none protocol=http/1.1}(recycle count=0)
xposed安装报错
这个报错后面一长串的信息在本人经历中每次会有不同,但似乎并不影响解决方法的选择。本文总结的几种方法并不全面,仅供参考。

二. 问题解决

根据网上资料,分析出现该问题的原因应该是xposed官方下载该资源的服务从http变更为https,但安装包内并未同步更新,因此用http试图获得https下的资源自然会报错。
我在试图解决该问题的时候发现了很多有意思并值得一试的博客,由于本人水平限制等其他原因,最终只有一个方法尝试成功了。其他没尝试成功的方法会在相关思路里贴出来。
参考链接:https://www.52pojie.cn/thread-1454243-1-1.html

stepOne

安装雷电模拟器4.0版本。注意,低版本并不适用。
【本例为x86,x86_64链接在后面附上】
【夸赞一下雷电模拟区里面的终端模拟器,提高效率很nice】
xposed初始状态

stepTwo

本方法需要两个文件:system文件夹和script.sh脚本。x86和x86_64不同点也就是在于这两个文件不同。

1. system文件

下载链接:system文件夹
API后面的数字为所需要的版本,按需下载即可。
下载后解压,里面的system文件夹即目标文件。

2. script.sh

这个脚本是来自参考链接里大佬写的,下载链接:script脚本
下载后将后缀改成sh即可。
由于个人原因当时并未仔细看脚本里的内容,有兴趣的可以自己学习了解一下,应该很有意思。

stepThree

创建文件夹xposed, 把system文件夹和script.sh放入xposed文件夹,通过雷电共享文件夹放到/system。
cd到/system后依次执行命令:

su
cd /xposed
mount -o remount -w /system
sh script.sh
reboot

【注意】
可能会出现以下错误:
运行脚本
需要将apk文件重命名为XposedInstaller.apk,放入路径/system/priv-app/XposedInstaller/XposedInstaller.apk

执行重启模拟器后即可。重启模拟器后可能还是会显示黄色的已安装未激活,建议多重启几次,让它好好自我反省几次即可。
已安装未激活
日志报错
最终结果如下:
成功
安装需要的模块或自己DIY的模块就可以开始enjoy了!

x86_64

参考链接:https://www.52pojie.cn/thread-1255866-1-1.html

三. 相关思路

思路①:sqlite

出现这个错误的原因在于apk中数据库里下载source写的是http,因此只要把这个http改成https就可以正常下载了。可以用SQlite Editor进行编辑,或者用命令行修改,原理都是一样的。
这个也是xposed社区里比较推荐的方法。但是我用SQlite Editor修改重启后数据库会自动恢复为http,在网上也没查到和我同样问题的情况,故放弃。
命令行方法没有尝试。
参考链接:SQlite Editor & 命令行修改

思路②:自行下载

这个也是最初自己先想到的方法,根据报错信息其实可以找到资源所在位置,再顺藤摸瓜把需要的资源找到下载即可。下载后需要进行重新映射URL,用charles进行抓包。
我没有这方面经验,遇到问题也很难自行解决,因此只是当做补充资料看了看,下载好资源后并未进行尝试。
参考链接:自行下载再重新映射URL

思路③:逆向重打包

个人觉得思路①和③有些许类似,不过思路③的切入点是apk里的class.dex。对apk逆向反编译,将class.dex里面的http改成https,再重打包。
这个方法个人认为比较适合有一定操作经验的人,涉及到逆向、重打包和加密签名等,对于我这种只有理论知识毫无实操经验的菜鸟来说可能得折腾个好几天,单针对解决该问题而言时间效益不高。
参考链接:逆向重打包

这个问题困扰了很久,先后安装三次xposed框架都遇到了这个问题,每次解决后下次安装还是会遇到同样情况,故在自己的笔记中总结一下,以便下次参考。

参考资料均源网络,侵删

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-09-08 10:51:10  更:2021-09-08 10:52:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 16:55:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码