前言:最近学习android逆向分析用到了Xposed,这里记录在搭建Xposed的流程以及遇到的一些坑。

准备工具

1.AndroidStudio(版本随意)我这里下载是当前最新的。直接到官网上下。

2.夜神模拟器,模拟器应该都无所谓,逍遥的也行,我的模拟器Adnroid版本是5.1.1

3.Xposed框架(装在模拟器上的)XposedInstaller_3.1.5-release-by-AlphaEva.apk

这里才是下载地址哦:链接:https://pan.baidu.com/s/1059hbSkwMgJHoKtLK8MO3Q 提取码:49qz

4.Xposed API,我这里下载的是 api-82.jar,里面还有源码,这个jar使用来放到AndroidStudio里写Hook调用的

好了,准备工作做好我们开始一步一步搭建环境,想想就有点激动

模拟器安装Xposed框架

1.打开夜神模拟器,将你的 XposedInstaller_3.1.5-release-by-AlphaEva.apk 拖到里面来,自己会安装

装好了就如下图

2.我们打开 Xposed Installer ,会弹出一个提示框,不用管它,直接勾选下次不再显示。

3.安装 如下图

3.等待下载

等啊等啊等啊等  我的网速慢,一个漫长的等待,大家可以趁这个时间上个厕所什么的。

4.下载好了,然后安装,安装完了会提示你重启,因为我们是模拟器,所以只能软重启,也就是手动找到你模拟器的重启按钮

5.重启之后打开 Xposed Installer 界面如下

好了到这里 模拟器Xposed 框架就安装完了,接下面配置Android开发环境了有些坑,要特别注意

配置Android开发环境

1.打开Android,新建项目 直接看图

2.选择 add no activity (因为Xposed模块不需要界面),点击next

3.填写你的项目名字,随意就好,点击Finish

4.然后就长这样,给大家放一个大图

5.然后我们切换视图空间,点击Android,选择Project

6.完事之后长这样

7,在app 目录下 创建 lib文件夹,拖进来 之前下载的 api-82.jar

由于AndroidStudio我连文件夹也不会创建,哈哈哈哈。。我真是菜鸡

然后我就直接Ctrl + C 复制 libs ,然后在 app 上面 Ctrl+V 改名为 lib(完美解决。。)

然后就长这样了

当然最后重要的是这一步,选择 api-82.jar 右键 add as library,没有这一步,后面你引入的Xposed 的类AndroidStudio不认识

实话说,这里我也卡了很久,没办法我就是这么菜

打开 AndroidManifest.xml,现在是长这样

然后我们改成这样,里面的 “E第一个“ 名字随便定义,将来在模拟器中Xposed矿浆里面的模块会显示的

其他内容我也不懂,具体大家百度了解一下

<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.xposedhook"><applicationandroid: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-dataandroid:name="xposedmodule"android:value="true" /><meta-dataandroid:name="xposeddescription"android:value="E第一个" /><meta-dataandroid:name="xposedminversion"android:value="53" /></application>
</manifest>

添加 compileOnly files('lib/api-82.jar') 代码到,build.gradle

apply plugin: 'com.android.application'android {compileSdkVersion 29buildToolsVersion "29.0.0"defaultConfig {applicationId "com.example.xposedhook"minSdkVersion 15targetSdkVersion 29versionCode 1versionName "1.0"testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'}}
}dependencies {implementation fileTree(dir: 'libs', include: ['*.jar'])implementation 'androidx.appcompat:appcompat:1.0.2'testImplementation 'junit:junit:4.12'androidTestImplementation 'androidx.test:runner:1.2.0'androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'compileOnly files('lib/api-82.jar')
}

创建MyHook类,类名随便取(啊啊啊贴图好难受,不过怕跟我一样的菜鸟找不到)

package com.example.xposedhook;import android.util.Log;
import static de.robv.android.xposed.XposedHelpers.findAndHookMethod;
import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XC_MethodHook;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.callbacks.XC_LoadPackage;
import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam;public class MyHook implements IXposedHookLoadPackage {public final static String TAG = "MyXposed";public void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Throwable {XposedBridge.log(TAG+"|"+"我抓到你了:"+lpparam.packageName);}
}

创建 assets 文件夹,在其下面创建 xposed_init 文件

文件内容就一句话,这是Xposed 的入口函数 (我前面竟然傻逼的在后面加了个分号,导致后面一直Class not found)

com.example.xposedhook.MyHook

OK,兄弟们AndroidStudio 的开发环境配置大功告成。哦也!!!!!!

我们开始生成APK然后放到模拟器上面去安装咯咯咯咯

build 项目,生成APK

build 完成找到你的apk 复制到桌面(随便找个地方)

然后 将 apk 丢到 模拟器中,进行安装

装好了会给你提示,然后我们在模拟器中打开 Xposed Installer

点击下图按钮找到 模块 两字,点击

然后就会出现我们写的模块了啊,名字就是我们之前在哪个xml里面写的 “E第一个“

接着我们在右边打钩,提示重启生效

然后我们就重启开效果了

终于完了,写完了,不要贴图了,好爽 好爽(。。好像还有图要贴,重启之后看有没有成功)

重启好了继续打开Xposed Installer

选择 日志 选项

看到了没有输出的日志,完美出来了

上图看不清,我在给张清楚的

over  大结局 !!!!!!

胜利!!!!!!!!

2019年6月18号 AndroidStudio+夜神模拟器 搭建Xposed环境相关推荐

  1. 绝地求生12月18日服务器信息,绝地求生12月18号几点更新维护完 2019绝地求生12月18日更新维护开服时间...

    绝地求生12月18日几点更新维护完?绝地求生在12月18日早上8点半正式服停机维护更新,维护期间玩家们不能登录游戏,需要等待维护结束开服,各位还不清楚本次更新维护时间安排的玩家,下面小编带来了2019 ...

  2. D2 日报 2019年4月18日

    ? 新闻 ➡️ 今天,小程序正式支持 SVG juejin.im ➡️ Facebook:公司曾「无意中上传」150 万用户邮件联系人 readhub.cn ? 开源项目 ➡️ NtesEyes/py ...

  3. 江西省2019计算机二级报名日期,2020年3月江西计算机等级报名时间、报名入口【2019年12月18日-27日】...

    [导语]<2020年3月江西全国计算机等级考试工作通知>现已发布.2020年3月江西计算机等级报名时间:2019年12月18日-27日,考试时间:2020年3月28日-30日,小编现将报考 ...

  4. 【2013年04月18号】

    每一次,遇到让人难受的事情,我基本都会选择逃避,像个鸵鸟,想就这样像什么都没发生一样去过生活.想想如果能瞒自己一生,也很好,无影无踪,真像徐志摩说的,悄悄的来去,不带一片云彩.这个世界,看的越多,越矛 ...

  5. 才发现网易相册已于2019年5月8号停止运营,如何导出相册照片:http://photo.163.com/transfer/html/login , 使用相册帐号登录,提供真实姓名、手机号码

    网易相册已于2019年5月8号停止运营. 如果您想找回网易相册信息,麻烦您点击这里下载app之后登录邮箱, 在app中点击[我的]页面-[帮助与反馈]进入帮助中心, 点击[博客与相册]-[如何导出相册 ...

  6. 投机者怎样于2019年3月18日前后的证券市场中利用底部放量实现程序化交易

    小孙我自己很久之前就对证券市场很有热情,从三年前开始,便不断地学习和吸收交易方面的知识,包括最近发现的一个叫QR量化投资社区的不错的平台,也给了自己很多灵感.结合最近的市场情况,心血来潮,在此就分享一 ...

  7. 穿越火线 raquo; 自动准备挂机刷分器V3.4 6月18号(支持永久跟新)

    6月18号更新说明 完美修复成为房主时.不能自动退出房间... 完美修复准备时间太长.不会自动退出房间... 过TX检测.... 修复自动按F5的问题.设置成可以选择开关.. 修复成为房主时.会自动退 ...

  8. 西门子工业自动化资料大全 (2019年10月18日版)

    西门子工业自动化资料大全 (2019年10月18日版) 下载地址:www.ad.siemens.com.cn/service/download/documentlist.pdf

  9. 完美国际2019最新服务器,《完美国际2》2019年12月18日部分数据互通公告

    为优化服务器配置,进一步提升<完美国际2>的服务质量,也为给玩家们提供相互交流的机会,适应活动规模日益扩大的需求,<完美国际2>预计将在2019年12月18日对"涅槃 ...

最新文章

  1. OpenWrite 新增扩散渠道:慕课手记,支持图片转存!
  2. Java 求1000以内的同构数_求1-10000之间的同构数
  3. Django内置分页扩展
  4. web前端兼容性面试题汇总!
  5. linux环境生成weblogic密钥,Linux环境下创建weblogic服务.doc
  6. 学习笔记(48):Python实战编程-grid布局
  7. Qt C++ 命名空间namespaces讲解
  8. Linux与时间相关的结构体及相关用法
  9. WEB站点服务器安全配置
  10. AutoFac文档9(转载)
  11. activiti驳回、沟通、转办的解决方法
  12. 如何在 M1 Mac 上运行英特尔应用程序?
  13. Python 从入门到进阶
  14. 如何给域里的每台电脑分配一个***远程访问IP地址
  15. 阶段3 2.Spring_01.Spring框架简介_06.spring的体系结构
  16. linux skype4.3安装指令,Ubuntu下安装skype的脚本
  17. tcl/tk 的安装
  18. Exchange 2013管理员账号登录ecp登陆不了
  19. luajit的字节码
  20. 万字长文详解华为方舟编译器的荣光和使命

热门文章

  1. 蒜头君的藏书(映射)
  2. python 爬取携程旅游景点评论
  3. 永恒之蓝 MS17-010漏洞复现
  4. 天龙八部玄武岛BOSS
  5. 区块链之开发命令行操作模块
  6. MVC搭建webAPI服务
  7. 从2-3树到 红黑树
  8. 基于R和ArcGIS两种方法制作土地利用转移图详细教程
  9. 智安网络丨居安思危·洞见未来 — — 智安网络安全周报
  10. 未来智安XDR荣膺ISC 2022创新能力百强