九江入海 发表于 2022-3-6 11:43

制作内置xposed模块应用小白教程

前言众所周知,如今许多的安卓app,为了获利,为了赚钱,为了老板买别墅换豪车,加入了非常多的广告及推广内容以及软件模块。随着安卓的时代发展,xposed的出现,在一定程度上改变了这种困境。
来自XDA论坛:Xposed is a framework that allows users to easily apply add-ons (called Modules) to the ROM. Rather than flashing a new ROM to get a specific feature, you can use Xposed to add individual features to whatever ROM you’re using, or even just the stock ROM.

Xposed 是一个允许用户轻松将附加组件(称为模块)应用到安卓系统的框架。 您可以使用 Xposed 将单个功能添加到您正在使用的任何安卓系统,不需要刷新系统就可以获得特定功能。
而使用Xposed的必要前提是,手机需要root。而国内厂商除了小米外,其他厂商(华为、荣耀、OPPO、vivo等)几乎都没有开放bootloader,更不用说root权限了。因此又出现了一种免root框架-太极,不过太极操作相对于普通软件又多了许多的步骤,使用起来相对要麻烦些。而如今,xpatch提供了一种很好的解决方案,将xposed模块打包进apk包中,实现了免root使用xposed框架,也不需要多安装app。
Xpatch用来重新签名打包Apk文件,使重打包后的Apk能加载安装在系统里的Xposed插件,从而实现免Root Hook任意App。其原理是对Apk文件进行二次打包,重新签名,并生成一个新的apk文件。 在Apk二次打包过程中,插入加载Xposed插件的逻辑,这样,新的Apk文件就可以加载任意Xposed插件,从而实现免Root Hook任意App的Java代码。
实际上,Xpatch的使用是非常方便的,仅需一行指令,就可以自行制作自己想要的内置模块app,在前几天我连续发布了三款利用此技术重新打包的软件
哔哩哔哩6.22版本 知乎8.5.0版本 百度贴吧12.19.1版本,反响很是不错,不过授人以鱼不如授人以渔,本身xpatch的制作非常简单,有电脑都能做。故有了今天的教程

https://static.52pojie.cn/static/image/hrline/4.gif


一、运行环境
需下载java并安装,目前没看到有特定java版本才能运行的要求,java17即可
java17官方下载地址:https://download.oracle.com/java/17/latest/jdk-17_windows-x64_bin.exe 点击直接下载java17

https://static.52pojie.cn/static/image/hrline/4.gif


二、软件下载
xpatch github地址:https://github.com/WindySha/Xpatch 点击跳转Xpatch github
lspatch github地址:https://github.com/LSPosed/LSPatch 点击跳转lspatch github
软件apk文件下载 推荐使用应用汇网页版,可以直接下载apk文件也可以查找以前版本
本文将以lspatch作为例子教学,lspatch是xpatch的一个分支,不过是使用lsposed作为 Hook 框架,其效果及稳定性等较xpatch要强,故很多xposed作者都比较推荐

https://static.52pojie.cn/static/image/hrline/4.gif

三、使用教程(初级)

1.下载lspatch的jar文件

2.打开cmd,并进入你所下载的jar文件所在目录(切换盘符:例如切换至D盘,则直接输入 D: 然后回车即可。进入目录 cd 目录名)

3.下载你要制作的软件apk文件以及xposed模块apk文件
在此我们以知乎为例,正好知乎的知了模块更新了
我们打开应用汇,搜索知乎,进入软件主界面,注意要看软件版本和你下载的模块是否兼容,一般模块作者都会写明他的模块支持哪些版本。下载保存到和jar文件的同一目录

模块apk文件也下载并放于jar文件同一目录
如果你想后面的过程简单一些,请将你下载的apk文件重命名。如图所示


4.回到cmd,根据下面的模板输入指令
java -jar lspatch.jar 【软件文件名】 -m 【xposed模块文件名】 -l 2
例如我要制作知乎的,我就在cmd窗口中输入 java -jar lspatch.jar zhihu.apk -m zhiliao.apk -l 2,按下回车键即可

等待java程序自动生成重新打包的apk文件,出现Done之后,在和jar文件的同目录下就会有一个新的apk文件,这个文件就是打包完成且内置了模块的apk安装包,至此你就成功制作了一个内置xposed模块的软件了,此时你就可以将apk文件传到你手机内进行测试了。部分模块的设置内容在其模块app中而并非集成在软件中(例如皮皮虾助手的设置需要安装皮皮虾助手app,皮皮虾中是看不到设置的)

https://static.52pojie.cn/static/image/hrline/4.gif

三、使用教程(高级)
我们也可以在重新打包的时候增加一些参数,以下均复制于lspatch当中的help内容
-h,--帮助
       打印此消息
   -r, --allowdown
       允许通过将 versionCode 覆盖为 1 来降级安装(在大多数情况下,应用仍然可以获得正确的版本代码)
       默认值:假
   -d, --debuggable
       将应用设置为可调试
       默认值:假
   -m,--嵌入
       将提供的模块嵌入到 apk
       默认: []
   -f,--强制
       强制覆盖存在的输出文件
       默认值:假
      - -manager
       使用管理器(不能使用嵌入模块)
       默认值:假
   -o,--输出
       输出目录
       默认: 。
   -l, --sigbypasslv
       签名绕过级别。 0(禁用)、1(pm)、2(pm+openat)。 默认 0
       默认值:0
   --v1
       使用 v1 签名进行签名
       默认值:假
   --v2
       使用 v2 签名进行签名
       默认值:真
   --v3
       使用 v3 签名进行签名
       默认值:真
   -v,--详细
       详细输出
       默认值:假

https://static.52pojie.cn/static/image/hrline/4.gif
五、常见报错解决

The source apk file does not exit. Please provide a correct path.
此错误意思是你输入的文件名(文件路径)有问题,重新检查输入的文件名或文件路径
其他报错由于还没遇到,待发现再补充{:301_986:}

https://static.52pojie.cn/static/image/hrline/4.gif
六、注意事项1.对于使用了签名校验的应用,使用Xpatch得到的apk可能无法启动,或者无法获取到网络数据,比如优酷,趣头条等。
2.根据这几天发布软件的反馈,华为和荣耀设备对于此类软件的兼容性非常差,基本是没法用,具体原因不再赘述
3.由于签名更改,QQ登录、微信登录、应用内直接分享是不可用的,此问题几乎无解
4.QQ、微信、支付宝等软件对于xposed模块几乎是零容忍,使用xposed模块可能会造成账号封禁,请悉知!
5.Xposed Hook框架暂时不支持Dalvik虚拟机。故此类软件在虚拟机上几乎是无法运行
6.部分模块报错请咨询模块提供者,可以看看他们的讨论群或者Github
7.原版应用和xpatch应用不能覆盖安装,因为签名不同必须卸载重新安装,但xpatch应用可以覆盖安装无需卸载重装。
8.本文方法只提供学习,请勿用于违法违规行为

https://static.52pojie.cn/static/image/hrline/4.gif
后记首先很感谢如今的安卓、java开发者,为发烧友制作出了丰富多彩的第三方内容,为对抗软件臃肿、广告做出了非常大的贡献。楼主也只是一个搬运工,做出的贡献微乎其微。也希望国内安卓生态能够越来越好。关于安全性的问题,首先xpatch、lspatch打包工具均为开源,大部分模块也是开源,如果有危险代码很快就会有大牛发现,所以各位是可以安心使用的。Xpatch有一个安卓app,之前使用过几次发现效果不好,也不知道是什么原因造成的,制作出的app无法安装,故还是用电脑制作了。本文可能有错误的地方,欢迎各位朋友指出,小的虚心受教!本文也会在其他平台发布,包括但不限于酷安社区、vx等,转载请注明来源

lrv 发表于 2022-3-6 12:24

谢谢分享,支持原创!

夏姬八颂 发表于 2022-3-6 14:33

感谢大佬教程

nidiexixi 发表于 2022-3-6 11:54

感谢教程

sky2021 发表于 2022-3-6 12:00

感谢分享,学习

H.Ra 发表于 2022-3-6 12:10

学到了,新技能get

okay1024 发表于 2022-3-6 13:01

学习了,谢谢分享

cqliu 发表于 2022-3-6 14:31

在基安看过类似的,但电脑上看会更加清晰明了{:1_893:}

软木 发表于 2022-3-6 14:59

就是因为xposed让我一直用小米

vogt0314 发表于 2022-3-6 15:08

正在学习逆向,学习操作看看
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 制作内置xposed模块应用小白教程