我的编程空间,编程开发者的网络收藏夹
学习永远不晚

android studio2021.3.1 最新xposed模块编写指南

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

android studio2021.3.1 最新xposed模块编写指南

前言

最新的xposed框架已经从xposed到Edxposed再到Lsposed,虽然xposed的api依然是通用的82版本,但现在网上大多数的在android studio上配置xposed的教程已经有点落后了,因此写下这篇来记录自己安装的流程。lsposed如何安装可以看我之前的小米root文章。

一. 配置build.gradle

找到app目录下的build.gradle,在dependencies里加上

compileOnly 'de.robv.android.xposed:api:82'compileOnly 'de.robv.android.xposed:api:82:sources'

这一步和网上的教程都是一样的,虽然xposed的api最新的是89,但最初的开发者只更新到82,89是后面其他开发者补充的,因此选用82是最稳定的。
在这里插入图片描述
但不要像网上很多教程说的一样添加jcenter,这个仓库在21年已经宣布停止更新了。现在跟android studio合作的是maven,或者可以用国内阿里云的镜像。找到settings.gradle(以前build.gradle里的allprojects/repositories现在统一搬到这里了),在repositories里加上

maven { url 'https://maven.aliyun.com/repository/public/' }

或者

maven { url "https://api.xposed.info/" }

在这里插入图片描述

至于从哪个仓库同步能成功我也不确定,或者你像我一样总是同步不成功,只能下载XposedBridgeApi-82.jar然后放进app/libs文件夹下,右击jar文件——>add to library,再把dependencies中的implementation files('libs\\XposedBridgeApi-82.jar')改成compileOnly files('libs\\XposedBridgeApi-82.jar')

跟xposed有关的尽量不用implementation,如果后面报错: Cannot load module
The Xposed API classes are compiled into the module’s APK.
This may cause strange issues and must be fixed by the module developer.
可能就是在dependencies里用到了implementation。

二. AndroidManifest.xml

在AndroidManifest.xml application标签中加入

<meta-data      android:name="xposedmodule"      android:value="true" /><meta-data      android:name="xposeddescription"      android:value="这是一个xposed demo" /><meta-data      android:name="xposedminversion"      android:value="82" />

xposedmodule告诉xposed框架这是一个xposed模块,xposeddescription给你的模块添加描述,xposedminversion表示支持的最低xposed版本。

在这里插入图片描述

三. xposed_init

在main目录下,AndroidManifest.xml的同级,新建一个assets文件夹。
在这里插入图片描述

在assets文件夹下新建文件xposed_init,文件类型选择text,文件内容填上你要新建的xposed类的名字。这个文件标记了你的xposed模块的入口。

四. 编写xposed类

在main/java/package name文件夹下,跟main activity同级,新建一个java类,这就是你模块的功能主体,可以在这里添加hook app内方法的函数。以下是打印app包名的一个模块示例:

package com.xposed.ssl;import de.robv.android.xposed.IXposedHookLoadPackage;import de.robv.android.xposed.XC_MethodHook;import de.robv.android.xposed.XposedBridge;import de.robv.android.xposed.callbacks.XC_LoadPackage;public class passHook implements IXposedHookLoadPackage {    @Override    public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Throwable {        XposedBridge.log("Loaded app: " + lpparam.packageName);    }}

如果只是用作Lsposed的一个模块的话,Main Activity其实是不需要的,可以选择safe delete。但是要先把AndroidManifest.xml里Main Activity的部分删除并且把main/res/layout里的主界面布局文件删掉。

五. 调试

可以用手机连接android studio,确保你的手机能够打开开发者选项里的USB调试和USB安装,并且电脑上已经装好adb。
android studio上打开File——>settings——>System settings——>Android SDK,下载好你手机android版本对应的sdk。
在这里插入图片描述
File——>settings——>System settings——>Android SDK——>SDK Tools,下载Google USB Driver。
在这里插入图片描述

用USB连接手机和电脑,打开设备管理器,选中便携设备中你的手机。选择驱动程序,更新驱动程序,选择刚刚安装的USB Driver,路径一般是在你存放SDK的路径下:Sdk\extras\google\usb_driver。
如果安装后提示你的手机已经安装了最适合的驱动那么这步就不用做了。然后打开手机的USB调试和安装,运行android studio的app,就能在手机上安装了,然后Lsposed也会检测到纳入这个模块。

来源地址:https://blog.csdn.net/scrawman/article/details/127187151

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

android studio2021.3.1 最新xposed模块编写指南

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

android studio2021.3.1 最新xposed模块编写指南

前言 最新的xposed框架已经从xposed到Edxposed再到Lsposed,虽然xposed的api依然是通用的82版本,但现在网上大多数的在android studio上配置xposed的教程已经有点落后了,因此写下这篇来记录自己
2023-08-20

使用Python编写爬虫的基本模块及框架使用指南

基本模块python爬虫,web spider。爬取网站获取网页数据,并进行分析提取。 基本模块使用的是 urllib,urllib2,re,等模块 基本用法,例子: (1)进行基本GET请求,获取网页html#!coding=utf-8
2022-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录