需要提前了解的
根据个人的理解,Xposed模块本身是不需要运行的,只有当hook被调用时,Xposed会主动去唤醒对应的assets/xposed_init中指定的类,但唤醒本身不会让Active激活,所以hook本身不要直接调用本模块定义的Active
1.Android Studio创建项目
2.编辑AndroidMainifest.xml
新创建的内容是
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="lsiding.com.wechattools">
<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">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
给标签application增加代码
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="lsiding.com.wechattools" >
<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" >
<activity android:name=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!--增加xposed模块配置-->
<meta-data
android:name="xposedmodule"
android:value="true" />
<!--描述-->
<meta-data
android:name="xposeddescription"
android:value="Easy example which makes the status bar clock red and adds a smiley" />
<!--xposed api最低版本要求-->
<meta-data
android:name="xposedminversion"
android:value="54" />
</application>
</manifest>
---------------------------------------------------------------------
3.增加依赖包到lib目录
(注意这里不能使用libs目录,该目录在android studio中会以另外一个编译机制运行)
这里添加完依赖包后,需要修改依赖范围,(右击项目 Open Module Settings)改成Provided(编译时依赖,但是这个包不会直接打入apk,因为xposed 框架本身已经有这个包了,在唤起这个hook时,会把依赖包加入classpath运行)。
---------------------------------------------------------------------
4.增加一个新类(这个新类最好不要直接使用MainActivity,因为xposed无法初始化Activity的上下文,会造成这个类运行失败)
package lsiding.com.wechattools;
/**
* hook 工具
* Created by Administrator on 2017-11-11.
*/
import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam;
public class WechatHook implements IXposedHookLoadPackage {
public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
XposedBridge.log("Loaded app: " + lpparam.packageName);
}
}
---------------------------------------------------------------------
5.编辑assets/xposed_init
增加assets目录
增加文件
xposed_init
内容
lsiding.com.wechattools.WechatHook
这个是唤起hook需要调用的class
- 大小: 93.3 KB
- 大小: 79 KB
- 大小: 89.4 KB
- 大小: 96 KB
分享到:
相关推荐
- 当模块开发完成后,将其打包成APK并分享给其他用户,他们可以通过Xposed Installer来安装。 通过以上步骤,一个基本的Xposed模块就开发完成了。需要注意的是,由于涉及到系统级别的修改,开发过程中应尽量遵循...
如何在xposed模块开发中安装存放在assets文件夹下的XposedInstall.apk? ok 如何不显示安装界面情况下安装assets文件夹下的XposedInstall.apk ok 静默安装后, 在模块程序中如何打开XposedInstall程序? 通过获取包名和...
4. **Lambda表达式和高阶函数**:Kotlin支持简洁的lambda表达式和高阶函数,使得事件处理和回调更加简洁、清晰,这在处理Xposed模块的事件监听时尤为方便。 5. **数据类和密封类**:Kotlin的数据类自动提供了equals...
Xposed框架是Android系统上的一款强大的插件框架...总之,Xposed-api-82是为Android 4.3系统开发Xposed模块的基础,通过正确地使用这个库,开发者可以创造出各种强大的系统级功能,但同时也需要注意潜在的风险和挑战。
- **模块开发流程**:创建一个Xposed模块通常涉及以下步骤:配置模块的AndroidManifest.xml,编写实现Xposed接口的类,打包成apk并安装到设备上。 - **适配不同Android版本**:由于Xposed API-82是针对API级别82的...
Xposed框架由德国开发者Rovo89开发,它的工作原理是利用Android系统的Zygote进程启动时的hook机制,将Xposed的核心库注入到系统中。Zygote是Android系统中的父进程,所有应用进程都是从Zygote克隆而来,因此,一旦...
2. **Android Studio支持**:由于使用了Android Studio作为开发环境,开发者可以利用其强大的代码编辑、调试和构建工具,使得源码编写和模块开发更为便捷。AS提供了丰富的插件和集成的Gradle支持,便于管理依赖和...
Xposed模块也是一个Android程序,编译之后也是一个apk安装包。与普通程序不一样的地方是如下四点: 让EdXposed知道我们安装的这个程序是个xposed模块。 模块里要包含有xposed的API的jar包,以实现下一步的hook操作。...
3. **Xposed模块开发**:编写Xposed模块通常涉及到Java编程,需要对Android系统API和Xposed API有深入理解。开发者需要创建一个继承自`de.robv.android.xposed.IXposedHookZygoteInit`或`de.robv.android.xposed....
使用Xposed API模块开发插件时,开发者需要具备以下基础知识: 1. **Java编程**:因为Xposed插件是用Java编写的,所以开发者需要熟悉Java语言。 2. **Android SDK**:理解Android系统的架构和SDK,包括如何使用...
Xposed-Android-Studio-Project 适用于Android Studio的Xposed框架演示项目。 只需导入项目并开始构建xposed模块即可。 图书馆-XposedBridgeApi-54.jar 对于教程:
"code(无Android studio)"可能是一些模块的源代码,对于开发者来说,这是一个很好的学习和参考素材,可以了解如何编写自己的Xposed模块。 总之,Xposed框架为Android用户提供了一个无限的自定义空间,无论是普通...
总的来说,"xposedDemo"是一个旨在解决Xposed模块导致闪退问题的示例应用,它利用了Android Studio和Xposed框架的功能,通过hook技术来修正系统行为,保证应用的正常运行。对于想要学习Xposed框架和Android系统级...
**Xposed模块开发流程:** 1. **环境准备**:首先,你需要一个已经root的Android设备,并且安装了Xposed Installer。 2. **创建项目**:使用Android Studio或其他IDE创建一个新的Android项目。 3. **添加依赖**:在`...
总之,"xposed application Template"为开发者提供了一个快速启动Xposed模块开发的基础,只需根据自身的项目需求进行相应的修改和扩展,即可构建出强大的系统级功能插件。在实际操作中,务必了解和遵循Android的编程...
由于许多开发工具,如 Android Studio,提供了多种版本的 SDK 平台,选择正确的 Xposed 版本对于确保与模拟器兼容至关重要。 标签 "android"、"安卓模拟器" 和 "xposed" 强调了这个压缩包的核心主题:Android 系统...
下载源码编译或者下载apk包并安装,应用xposed模块后重启,运行加固的应用后,插件会自动将dex文件dump到 /data/data/包名/dump 目录 apk文件不会实时更新,获取最新apk请自行编译源码 源码编译 将源码下载或者clone...
Android微信机器人源码即Xposed模块,基于Xposed框架开发,接入讯飞星火大模型,可以实现聊天消息自动回复,基于微信8.0.43版本,将源码下载后,添加到代码里自己申请的讯飞API Key相关信息,编译成Apk,在对应的...
通过AS_XposedModule,开发者可以学习如何利用Xposed框架进行Android系统的底层修改,理解hook机制,以及如何在Android Studio中创建和调试Xposed模块。这对于那些希望深入定制Android系统或开发个性化插件的开发者...
此模块的核心是 Java 代码实现,因为 Android 系统主要使用 Java 和 Kotlin 作为开发语言。开发者利用 Android SDK 中的相关 API,如 WiFiManager 和 KeyStore,来获取和解析 WiFi 密码。KeyStore 系统服务用于存储...