功能:

*AndroidManifest.xml反编译、编译、合并,指定so DT_NEEDED注入我们的so。

*Apk一键捆绑,两种姿势:

1.so DT_NEEDED注入。

2.dex smali注入。

使用说明:

1.*确定系统是64位Windows,确定已安装64位版jdk 8并添加bin目录到Path环境变量。

2.命令行:

java -jar ApkAssist.jar assit [-d -b -m -n]

-d AndroidManifest_.xml AndroidManifest.xml 反编译AndroidManifest.xml到AndroidManifest_.xml

-b AndroidManifest.xml AndroidManifest_.xml 编译AndroidManifest_.xml到AndroidManifest.xml

-m AndroidManifest.xml AndroidManifest_.xml 合并AndroidManifest_.xml(反编译过的)到AndroidManifest.xml(未反编译过的)。

-n libjiagu.so libassist.so 注入libassist.so到libjiagu.so。

java -jar ApkAssist.jar [-n -l]

-n libjiagu.so,libjiagu_x86.so libassist.so test.apk 注入libassist.so到libjiagu.so,libjiagu_x86.so,并捆绑。(so DT_NEEDED注入)

-l assist test.apk 在主dex的主类插入静态构造函数,插入加载libassist.so代码,并捆绑。(dex smali注入)

主类:App Entry类,没有则为Main Activity类。

主dex:主类所在的dex。

编写捆绑so:

在你的so代码里插入编译器构造函数,函数里加载我的libassist.so。

例:

void __attribute__ ((constructor)) load() {

dlopen(“libassist.so”, RTLD_NOW);

// 你的hook代码

}

生成Apk之后,复制lib目录到本工具inject目录。

目录说明:

inject/assets 将复制到Apk的assets目录。

inject/dex    将目录下所有dex合并为assist,并复制到Apk的assets目录。

inject/lib    将目录下与Apk的lib目录下同名的文件夹复制过去。

皮一下:

发现BUG?一定是你姿势不对!打死我也不会改的!给源码自己折腾去!

源码在哪?回帖过100就有了!

最后于 2018-7-19 03:31

被cdarksky编辑

,原因:

上传的附件:

ApkAssist.7z

(4.44MB,554次下载)

android开发apk捆绑,[原创]ApkAssist(Apk一键捆绑工具)相关推荐

  1. Android旋转视频工具类,Android开发实现的IntentUtil跳转多功能工具类【包含视频、音频、图片、摄像头等操作功能】...

    本文实例讲述了Android开发实现的IntentUtil跳转多功能工具类.分享给大家供大家参考,具体如下: 说明:此工具类是本人开发中总结下来的,还有其它的跳转亲给我留言,希望大家一起把这个工具类打 ...

  2. Android开发快速入门及导出apk

    环境及工具准备 jdk安装配置 安装android-studio或idea(推荐直接使用idea,android-studio其实也是基于idea开发的) 配置android-sdk 安装一个安卓模拟 ...

  3. 【Android开发】jarsigner重新打包apk

    签名(sign):在应用程序的特定字段写入特定的标记信息,表示该软件已经通过了签署者的审核. 过程:使用私有密钥数字地签署一个给定的应用程序. 作用: 识别应用程序作者: 检測应用程序是否发生改变: ...

  4. Android开发笔记(一百一十三)测试工具

    单元测试TestCase Android的sdk提供了对项目进行单元测试的功能,开发包的android.test下面便是专门用来单元测试的类.单元测试的作用是通过模拟文本输入和手势输入(如点击操作), ...

  5. Android开发笔记(四十)组件通讯工具Intent

    Intent的用途与组成 Intent用于处理Android各组件之间的通讯.Intent完成的工作主要有三部分: 1.Intent需标明本次通讯请求是从哪里来,到哪里去,要怎么走: 2.发起方携带上 ...

  6. Android开发把项目打包成apk

    做完一个Android项目之后,如何才能把项目发布到Internet上供别人使用呢?我们需要将自己的程序打包成Android安装包文件--APK(Android Package),其后缀名为" ...

  7. Android开发--构建项目安装包APK(debug版)

    1.build→Build APK(s),点击即可构建 2.点击日志可以查看构建情况 3.点击locate即可进入debug文件夹 4.也可以在构建完成后直接按照路径找到debug文件夹 其中apk文 ...

  8. android开发将h5转换成pdf_一键将PDF转换成PPT,秒懂!

    PDF因能良好的兼容各操作系统和软件版本的差异性,使得PDF文档在查阅播放的时候不影响排版变化,很多时候,我们因为工作上的需要,经常需要再次将PDF转换成PPT,那么怎样将PDF转换成PPT呢?需要下 ...

  9. Android开发实战《手机安全卫士》——5.“高级工具”模块实现 获取经纬度 锁屏 卸载

    文章目录 1.手机防盗--接收短信播放音乐 2.手机防盗--定位方式 3.手机防盗--获取经纬度坐标 4.手机防盗--设备管理器使用 5.手机防盗--锁屏 & 数据清除 & 卸载 6. ...

最新文章

  1. 分布式概念-去中心化副本控制实现
  2. 开源服务专题之------ssh防止暴力破解及fail2ban的使用方法
  3. 【移动通信】移动通信基础
  4. java异常什么时候抛出异常,java - 什么时候应该抛出IllegalArgumentException?
  5. 【[Offer收割]编程练习赛9 C】三等分
  6. Redis 面试题补充与汇总
  7. scala入门-07特质类(trait)的使用
  8. 设计模式的主要设计原则简介
  9. 10本畅销全球的技术经典,这次整个大的
  10. 在线SVG在线编辑器
  11. Python中round函数
  12. 设计模式之七大设计原则详解
  13. PHP合并两张(多张)图片
  14. 计算机应用基础全解,第三章习题-ddg全解.doc
  15. FXCM富汇官网:通过十个问题学习外汇知识
  16. 【正点原子FPGA连载】第七章 Verilog HDL语 -摘自【正点原子】领航者ZYNQ之FPGA开发指南_V2.0
  17. 借助近距离通信,实现手机作为游戏控制器掌控大屏游戏
  18. Python 一个快速视频剪辑编辑神器 — Moviepy
  19. Android怎么自定义充电铃声,充电提示音怎么设置
  20. 说说你对事件委托的理解?

热门文章

  1. 谷粒商城商品服务模块数据库文件关系
  2. Gesture Recognition
  3. IDEA 添加类注释、方法注释(快捷键 /** + Enter)
  4. java写 狐狸找兔子_狐狸找兔子(java 版)
  5. python解椭圆方程的例题_如何用python从3个点求椭圆方程
  6. PostgreSQL的学习心得和知识总结(一百一十七)|语法级自上而下完美实现MySQL数据库的 label:loop 的实现方案
  7. SAP ITS Mobile 系统实例(一)
  8. 【20保研】中南大学计算机学院2019年全国优秀大学生暑期夏令营通知
  9. 算法设计与分析 - 磁带存储程序 - 贪心算法(java实现)
  10. Java初学者都必须理解的六大问题