Xposed 插件开发入门教程(一)

其实网上已经有不少 Xposed 插件开发的入门教程了,我写的这篇与其说是教程,不如说是参考,为了防止之后忘了开发步骤,这里就写篇博客记录一下。android

要使用 Xposed 插件,首先要 root 手机并安装 Xposed 框架,这个是必须的(Xposed 安装相关教程请自行百度吧)。不过如今有一个 VirtualXposed 能够免 root 使用 Xposed,本人没有用过,就很少介绍了,有兴趣的朋友能够去搜索了解一下,下面就进入咱们的 Xposed 插件开发教程。api

 

步骤一:建立一个 Android 应用

打开 Android Studio 并建立一个 Android 应用,其实 Xposed 插件也是一个普通的 app,只不过须要添加一些额外的配置,以便 Xposed 可以识别这些插件,这个彷佛没什么好说的,我就不啰嗦了。app

 

步骤二:添加 Xposed 插件相关配置

首先在项目的 app 目录下的 build.gradle 文件中添加以下配置:框架

dependencies {
    compileOnly 'de.robv.android.xposed:api:54'
}

其中 dependencies 表示项目的依赖项;compileOnly 表示此此包仅编译时使用,不会将相关代码打包进 apk;后面的数字 54 表示要支持的 Xposed 版本,这个能够根据须要自行调整。ide

接着在 AndroidManifest.xml 中按以下代码配置:gradle

<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<meta-data
android:name="xposedmodule"
android:value="true" />
<meta-data
android:name="xposeddescription"
android:value="description" />
<meta-data
android:name="xposedminversion"
android:value="54" />
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

主要就是添加 3 个 meta-data 元素,其中 xposedmodule 表示此应用是一个 Xposed 插件;xposeddescription 为此插件的描述,插件安装后在 Xposed 插件页面能够看到此描述文本;而 xposedminversion 则表示要求的 Xposed 最低版本,一般这个字段要和前面的依赖项版本号相同。ui

 

步骤三:建立 Hook 类并实现相关代码

新建一个类,假设命名为 XposedInit,让此类实现 IXposedHookLoadPackage 接口,代码以下:spa

public class XposedInit implements IXposedHookLoadPackage {
	
    @Override
    public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Throwable {
        XposedBridge.log("Loaded app: " + lpparam.packageName);
    }
}

这里先打印一个 log 吧,具体的 hook 代码之后有时间再写篇博客,这里就不写了,否则这博客写不完了。插件

 

步骤四:配置 xposed_init

在 assets 目录下新建一个名为 xposed_init 的文件(文件名必须是这个,且无后缀),并将相关 hook 类的全限定名称写入此文件中,若有多个类,则每行写一个,如:日志

xxx.xxx.XposedInit

这一步是告诉 Xposed 咱们的 hook 类是哪些,要不 Xposed 找不到咱们的类就没法完成 hook 操做了。

 

步骤五:编译插件并安装到手机

使用 AndroidStudio 编译并生成签名的 apk 文件,而后安装到手机中,如无心外,Xposed 会提示咱们插件已安装,并询问是否要开启插件并重启手机,重启后打开 Xposed 的日志界面就能够看到咱们的插件输出的 log 了。

相关文章
相关标签/搜索