学习Xposed框架,在github:https://github.com/rovo89 下载XposedInstaller安装到手机上来管理Xposed的模块。
本文记录根据官方文档(资料1)在android studio下创建Xposed模块的步骤:
1 打开AS创建空activity的项目;
2 在AndroidManifest.xml下添加<meta-data>,代码如下:
        <meta-data
android:name="xposedmodule"
android:value="true"/>
<meta-data
android:name="xposeddescription"
android:value="学习" />
<meta-data
android:name="xposedminversion"
android:value="54"/>

  需要添加三个<meta-data>,注意的是name字符串不能更改且version要对应你等下要依赖的jar版本

3 包含XposedBridgeApi-54.jar——这里要与上面的xposedminversion value对应
3.1 在app目录下创建deps文件夹,并将jar复制到此目录下,如图:

                                             


 
3.2 在app目录下的build.gradle文本(见上图)中添加命令将jar包含进项目:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
<span style="color:#3333ff;">provided fileTree(dir: 'deps', include: ['*.jar'])</span> }

4 在java目录下创建java类开始写代码,按照官方文档的代码:

package com.jason.learnxpose;

import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.callbacks.XC_LoadPackage; /**
* Created by vendanner.
*/
public class Tutorial implements IXposedHookLoadPackage{
@Override
public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Throwable {
XposedBridge.log("Loaded app" + lpparam.packageName);
}
}

5 在assets/xposed_init文本中添加我们写的类全名:Xposed框架只会加载在此文本中出现的类(看Xposed学习三)

                               

  xposed_init内容:com.jason.learnxpose.Tutorial

6 Run得到将当前模块安装到手机中;在最初我们是创建没有activity项目,在Run时需要修改设置:
点击右图中的app,得到下图
选择Do not launch Activity。
此时点击Run将apk安装到手机,打开手机中的Xposed Installer点击模块看到刚刚安装的模块。模块必须重启才能开始工作,在后面的讨论Xposed原理会讲到为何重启才能工作。至此,在android
studio上开发Xposed模块的全部流程结束。
 
 

参考资料:

版权声明:本文为博主原创文章,未经博主允许不得转载。

最新文章

  1. 【原】EasyUI ComboGrid 集成分页、按键示例
  2. Android动画的理解
  3. 团队作业week14
  4. iOS开发UI篇—ios应用数据存储方式(偏好设置)
  5. 【UVA 1583】Digit Generator
  6. DBA_Oracle Erp加密和解密账户密码(案例)
  7. PDF按模板出力,多个PDF合并
  8. mvc razor页面的邮箱校验
  9. iOS开发篇-申请开发者账号流程
  10. QT自定义对象导入JavaScript脚本使用
  11. vue搭建开发环境
  12. 设计模式(4)--AbstractFactory(抽象工厂模式)--创建型
  13. [51nod1532]带可选字符的多字符串匹配
  14. {style}/index_article.htm {style}表示什么意思啊
  15. C++面试
  16. 12306登录爬虫 session版本
  17. 【BZOJ4946】[NOI2017]蔬菜(贪心)
  18. MPU6050学习笔记(电源管理器1、2)
  19. 【转载】D3DXVec3TransformNormal and D3DXVec3TransformCoord
  20. linux的一些机制Signal, Fork,

热门文章

  1. js和c#小数四舍五入
  2. 【odoo14】第十六章、odoo web库(OWL)
  3. P2731 骑马修栅栏 Riding the Fences 题解(欧拉回路)
  4. dex、apk完整性校验
  5. python flake8 代码扫描
  6. ASP.NET Core分布式日志系统ELK实战演练
  7. 12、MyBatis教程之缓存
  8. Excel模板导出之动态导出
  9. java例题_25 判断是否为回文数!
  10. Android学习之 AlertDialog