Android apk逆向:反编译,回编译,签名,打包。
Android apk逆向:反编译,回编译,签名,打包流程。
第一步: apk 反编译。
1) 打开命令行窗口,输入java -version, 检测当前java版本,若版本较低, 则下载JAVA SE, 需要添加环境变量。
2) 需要下载apktool, 需要添加环境变量,然后再命令行窗口输入apktool查看是否安装成功。
3) 在C:\Users\XXX\AppData\Local 下新建一个apktool\framework目录,否则反编译时会有警告。
4) 命令行窗口,进入apk在文件夹,输入: apktool d name.apk。会在当前目录生成一个name的资源文件夹,里面存放apk包的资源。

第二步: apk 回编译。
1)在命令行窗口输入:apktool b name。新生成的apk会在name/dist/目录下面。若报错则输入apktool -r b name,资源文件不反编译,避免资源报错
第三步: apk 签名,打包,原文链接:https://blog.csdn.net/weixin_42741158/article/details/84978203
进入所装java目录的bin文件夹。(我的是C:\Program Files (x86)\Java\jdk1.8.0_181\bin)
输入命令:keytool -genkey -alias abc.keystore -keyalg RSA -validity 20000 -keystore abc.keystore
(这里会让输入2次密码,我都是输123456)
您的名字与姓氏是什么?
[Unknown]: webyang
您的组织单位名称是什么?
[Unknown]: webyang
您的组织名称是什么?
[Unknown]: webyang
您所在的城市或区域名称是什么?
[Unknown]: new york
您所在的省/市/自治区名称是什么?
[Unknown]: new york
该单位的双字母国家/地区代码是什么?
[Unknown]: cn
CN=webyang, OU=webyang, O=webyang, L=new york, ST=new york, C=cn是否正确?
[否]: Y
查看当前bin目录,生成了新文件:abc.keystore,把上面的test.apk放到这个bin目录,再次运行:
jarsigner -verbose -keystore abc.keystore -signedjar testx.apk test.apk abc.keystore
发现生成了testx.apk,此apk为最终安装版本。
Android apk逆向:反编译,回编译,签名,打包。的更多相关文章
- android apk 防止反编译技术第四篇-对抗JD-GUI
又到周末一个人侘在家里无事可干,这就是程序员的悲哀啊.好了我们利用周末的时间继续介绍android apk防止反编译技术的另一种方法.前三篇我们讲了加壳技术(http://my.oschina.net ...
- 转: android apk 防止反编译技术(1~5连载)
转: android apk 防止反编译技术 做android framework方面的工作将近三年的时间了,现在公司让做一下android apk安全方面的研究,于是最近就在网上找大量的资料来学习. ...
- android apk 防止反编译技术第一篇-加壳技术
做android framework方面的工作将近三年的时间了,现在公司让做一下android apk安全方面的研究,于是最近就在网上找大量的资料来学习.现在将最近学习成果做一下整理总结.学习的这些成 ...
- android apk 防止反编译技术第二篇-运行时修改字节码
上一篇我们讲了apk防止反编译技术中的加壳技术,如果有不明白的可以查看我的上一篇博客http://my.oschina.net/u/2323218/blog/393372.接下来我们将介绍另一种防止a ...
- android apk 防止反编译技术第二篇-运行时修改Dalvik指令
上一篇我们讲了apk防止反编译技术中的加壳技术,如果有不明白的可以查看我的上一篇博客http://my.oschina.net/u/2323218/blog/393372.接下来我们将介绍另一种防止a ...
- android apk 防止反编译技术第三篇-加密
上一篇我们讲了apk防止反编译技术中的加壳技术,如果有不明白的可以查看我的上一篇博客http://my.oschina.net/u/2323218/blog/393372.接下来我们将介绍另一种防止a ...
- apktool 反编译 回编译
下载apktool 安装好Java环境 拷贝apk 拷贝game.apk到当前文件夹.apk随便指定 反编译 反编译完成.生成game目录 game目录内容 回编译 回编译完成.生成build和dis ...
- Android Apk的反编译和加密
这几天在上海出差,忙里偷闲学习了一下Apk的反编译工具的基本使用.下面就简单介绍一下如何将我们从网上下载的Apk文件进行反编译得到我们想要获得的资源文件和源码. Android的应用程序APK文件说到 ...
- Android apk逆向实战
简介 逆向Android apk其实是一个分析Android apk的一个过程,必须了解Android程序开发的流程.结构.语句分支.解密原理等等. 功能 破解一个注册验证程序(自写一个简单的注册验证 ...
随机推荐
- [图形计算器]Desmos
一.图形计算器 var elt = document.getElementById('calculator'); var calculator = Desmos.GraphingCalculator( ...
- K8s Service原理介绍
Service的工作方式有三种: 第一种: 是Userspace方式 如下图描述, Client Pod要访问Server Pod时,它先将请求发给本机内核空间中的service规则,由它再将请求, ...
- ServerManager.exe 0xc0000135 应用程序错误
问题: 将 Windows Server 2016 .NET Framework移除. IIS卸载后, Server Manager.exe.事件查看器等都无法正常开启. 解决方案: 在运行中,输入C ...
- C复习---动态内存分配
原型extern void *malloc(unsigned int num_bytes);头文件#include <stdlib.h>#include <malloc.h>函 ...
- Google Kick Start 2019 C轮 第一题 Wiggle Walk 题解
Google Kick Start 2019 C轮 第一题 Wiggle Walk 题解 题目地址:https://codingcompetitions.withgoogle.com/kickstar ...
- MySQL事务隔离级别(二)
搞清楚MySQL事务隔离级别 首先创建一个表 account.创建表的过程略过(由于 InnoDB 存储引擎支持事务,所以将表的存储引擎设置为 InnoDB).表的结构如下: 为了说明问题,我们打开两 ...
- maven本地仓库已经有了所需的jar包,为什么还要去请求远程仓库
问题 IDEA 中的maven 项目,一个jar包一直导入不进来,reimport 无效.从另一仓库把这个jar包拷贝到当前仓库,还是无效.mvn clean install -e U 发现加载这个j ...
- VS2015 创建C++动态库及使用
转载:https://blog.csdn.net/w_x_myself/article/details/82252646 1.dll的特点 代码复用是提高软件开发效率的重要途径.一般而言,只要某部分代 ...
- kotlin基础 range
a = 1..10 //[1,10] b = 1 unitl 10 //[1,10)
- .net core 2.2 EF oracle db first
Nuget控制台: Install-Package log4net Install-Package Newtonsoft.Json Install-Package Autofac Install-Pa ...