第一个Xposed模块

前言

Xposed是一款强大的hook框架,是时候该学习一下如何开发它的模块了。刚开始也是比较懵,因此记录一下。Xposed相关的链接

我的开发环境如下:

  • 已Root并且安装了Xposed Installer的Nexus 5, Android版本4.4.4
  • Android Studio,API Level 25
  • XposedBridgeApi-54.jar

开发流程

  1. 新建Android Studio工程,选择no Activity
    2.把XposedBridgeApi-54.jar加到 libs 文件夹,然后修改build.gradle中的一个地方。
    compile fileTree(dir: 'libs', include: ['.jar']) 改为 provided fileTree(dir: 'libs', include: ['.jar'])
build.gradle

3.在AndroidManifest.xml文件的application标签中增加下面的内容

<meta-data
            android:name="xposedmodule"
            android:value="true" />
<meta-data
            android:name="xposeddescription"
            android:value="First Xpoesd Module Test" />
<meta-data
            android:name="xposedminversion"
            android:value="54" />

xposeddescription下面的value填写xposed模块的相关描述,xposedminversion下面的value是我们使用XposedBridge jar包的版本号。

4.新建一个java文件,写一个简单的example

package com.seven.xposedtest;

import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.callbacks.XC_LoadPackage;

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

5.新建一个assets目录

assets

6.在assets目录新建一个文件 xposed_init ,里面写上hook类的完整路径。比如我的包名是com.seven.xposedtest,类名是XModule,那么就写上com.seven.xposedtest.XModule

7.Build Apk,然后install到手机。在Xposed installer的模块里找到这个模块,勾选上,接着重启手机。就可以在logcat看到效果啦。如果能看到有Seven Loaded app:的text,说明我们的模块安装成功了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,302评论 25 708
  • 本篇文章具体是Xposed开发,如何安装Xposed需自行上网查找,本文同步更新于旺仔的个人博客,访问可能有点慢,...
    叫我旺仔阅读 15,973评论 0 14
  • 没人知道当年奶奶为什么要和爷爷离婚,父亲只是说,那天房子后头的小河涨水,他正蹲在河边戳烂泥,然后爷爷和奶奶来了,带...
    Aki妖大王阅读 569评论 4 8
  • 走下去, 凭着耐心和拼搏, 生活自会给予你全部答案
    有个小可爱阅读 309评论 0 2
  • 2003年的今天,我上初中,早上早读课到教室,隔壁女生正在大喊大叫,说张国荣跳楼了,我当时对娱乐圈不感冒也不熟悉,...
    达达令阅读 454评论 0 3