[Xposed框架]Android Hook 菜鸟入门教程一
前言:由于只有一点Java基础,没有搞过Android开发 所以做起来比较难 ,看论坛里大神写的帖子还是有点费力的,所以这是对基础差的同学的帖子。
Android Hook常用的两个框架
1.Cydia substrate框架
参考:
官网
http://www.cydiasubstrate.com
跟着鬼哥学Android java hook系列
http://www.52pojie.cn/thread-288128-1-1.html
2.Xposed框架(本教程使用的)
参考:https://github.com/rovo89/XposedBridge/wiki/Development-tutorial
使用的工具
Android studio
夜神模拟器
先给出最基础的,根据官方给出的教程(有坑),下面开始
模块基本开发流程
1.首先创建工程
创建工程android4.0.3(api15,Add No Activity)
最初的样子
2.Adding the Xposed Framework API to your project(添加Xposed Framework API 到我们的工程)
首先到这里下载api-82-sources.jar,api-82.jar
https://bintray.com/rovo89/de.robv.android.xposed/api
放到上图的app/libs目录下
3.修改 AndroidManifest.xml
修改为
[XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.kali.hook_test_01"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="15" />
<application
android:label="@string/app_name" >
<meta-data
android:name="xposedmodule"
android:value="true" />
<meta-data
android:name="xposeddescription"
android:value="Hook log test" />
<meta-data
android:name="xposedminversion"
android:value="53" />
</application>
</manifest>
这里面是要做适当的修改的
4.修改build.gradle
[Asm] 纯文本查看 复制代码 dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.1.1'
}
为
[Asm] 纯文本查看 复制代码 dependencies {
provided 'de.robv.android.xposed:api:82'
provided 'de.robv.android.xposed:api:82:sources'
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.1.1'
}
5.新建一个类Tutorial
[Java] 纯文本查看 复制代码 package com.kali.hook_test_01;
import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam;
public class Tutorial implements IXposedHookLoadPackage {
public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
XposedBridge.log("Loaded app: " + lpparam.packageName);
}
}
6.入口assets/xposed_init配置,声明需要加载到XposedInstaller 的入口类:
com.kali.hook_test_01.Tutorial //完整类名:包名+类名
OK 下面基本的都做完了 我们看一下目录结构 很简单
要改的地方 我都用红箭头指出来了 够入门吧
运行一下 查看log日志
成功的实现了这个简单的Hook
打包一下这个工程 有需要的可以下载下
https://yunpan.cn/cM2Gumn835hza (提取码:151c)
|