apk反编译后重新打包(修改apk并重新打包和签名后怎么和原app共存)

:暂无数据 2026-06-27 23:10:03 :1

apk反编译后重新打包(修改apk并重新打包和签名后怎么和原app共存)

“apk反编译后重新打包”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看apk反编译后重新打包(修改apk并重新打包和签名后怎么和原app共存)!

本文目录

修改apk并重新打包和签名后怎么和原app共存

反编译所使用的到的工具
apktool,反编译apk,从apk中提取图片和布局资源
dex2jar,将可运行文件classes.dex反编译为jar源码文件
java-decompiler(jd-gui),主要用来查看jar源码文件
在反编译之前要确保电脑上有Java
检查有无Java的方法,打开命令行,输入java -version
如果出现如下图所示就是安装了Java,没有的话需要自行配置环境
在这里插入图片描述
下载apktool.bat脚本(右键,链接另存为…)
在这里插入图片描述
下载最新版本的apktool.jar,并且重命名为apktool.jar
将apktool.bat和apktool.jar还有需要反编译的Apk文件放在同一目录下就可以正常使用了
反编译命令行:
output_dir代表文件的输出路径
test.apk代表Apk的文件名
apktool.bat d -o
test.apk
1
1
-o 指定解码目标文件夹的名称(默认使用APK文件的名字来命名目标文件夹)
然后继续执行命令行
apk-file是上一步输出的文件夹的名字
apktool.bat b apk-file
1
1
会发现执行该命令行后会多出下面两个文件夹,dist文件夹下面放的就是apk文件
在这里插入图片描述
此时,可以查看AndroidManifest.xml,res及smali文件了。甚至可以修改这个目录下的资源文件或者smali文件,然后重新编译。如果需要修改图片的话,只需要找到对应位置替换掉就好了;
apktool反编译出来只能得到apk的smali文件,即汇编语言版本,并不能得到源代码。

jadx反编译后可以重新打包吗

1、首先新建一个android项目,里面只有一个MainActivity,而且主界面只会显示一个字符串:你好。
2、接着,切换到这个项目生成的apk文件所在的目录,可以看到有一个hellodemo.apk。
3、在命令行输入:apktool d -r hellodemo.apk。可以看到在当前目录下生成了一个hellodemo文件夹。
4、进入到hellodemo\smali\com\example\hello,打开MainActivity.smali。找到:
const-string v1, "\u4f60\u597d",
修改为:
const-string v1, "hello",
5、然后在命令行输入:apktool b hellodemo hellodemo1.apk。这回重新打包成hellodemo1.apk。
6、然后给新生成的apk进行签名。把这个apk拷贝到autosign的目录下面,然后切换过去,在命令行输入:java -jar signapk.jar testkey.x509.pem testkey.pk8 hellodemo1.apk hellodemo.apk。
7、把生成的hellodemo.apk安装到手机,可以看到主界面上已经显示的是hello,而不再是你好。说明反编译重新打包成功!

如何反编译android应用并重新打包

工具:
apktool,作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看
dex2jar,作用:将apk反编译成java源码(classes.dex转化成jar文件)
jd-gui,作用:查看APK中classes.dex转化成出的jar文件,即源码文件
反编译流程:
一、apk反编译得到程序的源代码、图片、XML配置、语言资源等文件
上述工具中的apktool,解压得到3个文件:aapt.exe,apktool.bat,apktool.jar ,将需要反编译的APK文件放到该目录下,
打开命令行界面(运行-CMD) ,定位到apktool文件夹,输入以下命令:apktool.bat d -f test.apk test
(命令中test.apk指的是要反编译的APK文件全名,test为反编译后资源文件存放的目录名称,即为:apktool.bat d -f )
获取成功之后,发现在文件夹下多了个test文件,点击便可以查看该应用的所有资源文件了。
如果你想将反编译完的文件重新打包成apk,那你可以:输入apktool.bat b test(你编译出来文件夹)便可
之后在之前的test文件下便可以发现多了2个文件夹:
build
dist(里面存放着打包出来的APK文件)
二、Apk反编译得到Java源代码
上述工具中的dex2jar和jd-gui ,解压
将要反编译的APK后缀名改为.rar或则 .zip,并解压,得到其中的额classes.dex文件(它就是java文件编译再通过dx工具打包而成的),将获取到的classes.dex放到之前解压出来的工具dex2jar-0.0.9.15 文件夹内,
在命令行下定位到dex2jar.bat所在目录,输入dex2jar.bat classes.dex,
在改目录下会生成一个classes_dex2jar.jar的文件,然后打开工具jd-gui文件夹里的jd-gui.exe,之后用该工具打开之前生成的classes_dex2jar.jar文件,便可以看到源码了

如何反编译android应用以及重编译,签名和对齐优化

首先,了解一下我们为什么需要反编译apk
大部分情况下,是由于想本地化一款优秀的应用,才需要做这事儿;又或者进行少量的smali修改以达到想要的效果(如添加归属地,使3G版Nexus 7支持Wi-Fi热点)。
下面我们先准备运行环境和工具
建立工作目录,如.\workspace\apktoolbox (下面同样以此路径为例)
必不可少的JDK:Oracle Java下载,安装完成后把《jdk-inst-path》\bin添加到$PATH环境变量中
反编译和重编译工具apktool:Google Code下载,按平台下载(一个apktool-install-《platform》-《ver》-tar.bz2,一个apktool《ver》.tar.bz2,下载完成后解压至.\workspace\apktoolbox\bin
密钥文件,共4组。test/shared/media/platform,从android source中获取,分别对应不同共享用户ID时签名所需(查看应用AndroidManifest.xml第二行android:sharedUserId项 ),放到.\workspace\apktoolbox\bin下
test - 无android:sharedUserId项
shared - android:sharedUserId=android.uid.shared
media - android:sharedUserId=android.uid.media
platform - android:sharedUserId=android.uid.system
签名工具signapk.jar,放到.\workspace\apktoolbox\bin下
对齐优化工具zipalign(从android sdk中获取,在tools目录下),放到.\workspace\apktoolbox\bin下
准备工作完成
接下来我们就要开始工作了(以本地化工作为例)
把待反编译的apk放到.\workspace\apktoolbox\apks下
在命令行模式下进入.\workspace\apktoolbox\bin目录,输入以下命令进行解包(反编译)
apktool d ..\apks\《apkfile》.apk ..\apks\《outdir》
.\workspace\apktoolbox\apks\《outdir》\res下的values目录(英文原版)和values-r《locale》目录(本地化)就是我们需要的对象。
本地化工作完成后,在命令行中输入以下命令进行重新打包(重新编译)
apktool b ..\apks\《outdir》
.\workspace\apktoolbox\apks\《outdir》\dist目录下会生成重新打包后的apk(未签名,未对齐优化)
重新打包完成后,在命令行中输入以下命令进行签名(根据实际情况选用密钥,这里以test密钥为例)
java -jar signapk.jar testkey.x509.pem testkey.pk8 ..\apks\《outdir》\dist\《apkfile》.apk ..\apks\《apkfile》_signed.apk
签名完成后,在命令行中输入以下命令进行对齐优化
zipalign -f -v 4 ..\apks\《apkfile》_signed.apk ..\apks\《apkfile》_zipaligned.apk
《apkfile》_zipaligned.apk就是我们最终需要的apk了。
完成
部分apk需要系统框架资源,没有的话在重新打包时会报错,这种情况下我们只需要先安装一下对应系统框架即可(从你目标ROM中把/system/framework/framework-res.apk提取出,放到.\workspace\apktoolbox\apks下)。在命令行中输入以下命令进行安装
apktool if ..\apks\framework-res.apk

怎样修改APK文件!修改后怎么打包成APK

1、首先打开apk反编译软件,点击“打开”一个apk。或者直接把需要反编译修改的apk拖入到窗口中。

2、如果apk反编译成功了,下方就会显示成功的提示,如图所示。

3、接下来点击“工程管理器”,选择“AndroidManifest.xml”文件,如图所示。

4、AndroidManifest.xml文件中的android:versionName对应的数值就是版本号,如图所示。

5、如果想要修改版本号,直接修改android:versionName数值即可,改好了记得点击一下保存图标,如下图所示就完成了。

apk反编译和重新打包

操作系统:Mac OS X
软件:apktool

***隐藏网址***
在终端输入: apktool d xxx.apk ,我在反编译时出现了以下错误:

看提示是无法写入到这个目录 /Users/xxx/Library/apktool/framework (xxx为电脑用户名),那就在 /Users/xxx/Library 下新建apktool文件夹,并在apktool文件夹下再新建个framework文件夹,然后为了保险起见设置新建文件夹到权限,在终端输入: chmod -R 777 /Users/xxx/Library/apktool
接着再重新执行反编译命令就可以成功了,在xxx.apk相同目录下会出现反编译后的文件夹。

在终端输入编译命令: apktool b xxx (xxx为刚才反编译的文件夹),成功后会在xxx文件夹下的dist文件夹下生成打包好后的apk文件

现在打包好后的apk是没有签名的,所以无法安装,现在给apk签名

20000为时间,这个设置长点就好了,-keystore后面是签名文件保存路径。输入命令按回车键会让输入密码等信息,按提示输入,不要忘了密码,签名时要用。
2.接着在终端输入:

-keystore后面的为签名文件的路径,-signedjar后面为签名好后apk的存放路径,在这个后面的一个为需要签名的pak的路径,最后的android.keystore为证书的别名,如果不知道别名,可以在终端输入: keytool -list -v -keystore /Users/xxx/Desktop/android.keystore 查看具体信息,里面有别名。
这一步还要注意,签名文件和需要签名的apk要在同一目录下。

apk反编译后 什么都没有改 重新打包报错 求解

使用apktool进行apk的反汇编时,没有出现问题(有问题的自行解决),
但是进行回汇编时出现:
F:\apktool》apktool b Hello Hello.apk
Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
otExist: apktool.yml
at brut.androlib.Androlib.readMetaFile(Unknown Source)
at brut.androlib.Androlib.build(Unknown Source)
at brut.androlib.Androlib.build(Unknown Source)
at brut.apktool.Main.cmdBuild(Unknown Source)
at brut.apktool.Main.main(Unknown Source)
Caused by: brut.directory.PathNotExist: apktool.yml
at brut.directory.AbstractDirectory.getFileInput(Unknown Source)
... 5 more
经验证是,反汇编时没有生成apktool.yml
进行反汇编时,改用命令apktool d -r xx.apk xx便可以解决(加上了-r选项)

安卓反编译出来的代码如何修改重新生成APK

反编译步骤:

  1. 下载apktool 并设置环境变量

  2. 命令行进入apk目录执行:apktool d xx.apk  (如果遇到一些错误说明apk做了防破解处理)

  3. 执行成功后会生成xx文件夹,进入xx文件夹修改需要修改的内容,如果需要修改代码,进入xx\smali\里面,需要懂一些smali语法

  4. 修改完后回到命令行,执行:apktool b xx  ,会在xx文件夹里面生成一个dist文件夹,里面的apk就是回编译的,这个apk是没有签名的

  5. 下载网上的签名工具对apk签名,完了就可以安装了(如果你下载了源码或者sdk,里面自带一个signapk也可以签名)

如果你还想了解更多这方面的信息,记得收藏关注本站。

apk反编译后重新打包(修改apk并重新打包和签名后怎么和原app共存)

本文编辑:admin

更多文章:


韩剧热播网怎么没了?在哪个软件看韩剧比较全,多说几个也行

韩剧热播网怎么没了?在哪个软件看韩剧比较全,多说几个也行

各位老铁们好,相信很多人对热播网韩剧都不是特别的了解,因此呢,今天就来为大家分享下关于热播网韩剧以及韩剧热播网怎么没了的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年11月3日 22:50

国家电网网上营业厅(国家电网网上营业厅)

国家电网网上营业厅(国家电网网上营业厅)

大家好,关于国家电网网上营业厅很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于国家电网网上营业厅的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年11月3日 21:10

金山wps个人版下载(金山wps2005个人版在哪下载)

金山wps个人版下载(金山wps2005个人版在哪下载)

本篇文章给大家谈谈金山wps个人版下载,以及金山wps2005个人版在哪下载对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录金山wps200

2026年11月3日 19:40

procreate教程(《procreate》移动局部图层教程)

procreate教程(《procreate》移动局部图层教程)

各位老铁们好,相信很多人对procreate教程都不是特别的了解,因此呢,今天就来为大家分享下关于procreate教程以及《procreate》移动局部图层教程的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录《

2026年11月3日 17:30

pccamera摄像头驱动下载链接(有免费下载联想小新电脑相机驱动的软件吗)

pccamera摄像头驱动下载链接(有免费下载联想小新电脑相机驱动的软件吗)

这篇文章给大家聊聊关于pccamera摄像头驱动下载链接,以及有免费下载联想小新电脑相机驱动的软件吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年11月3日 17:10

全屋定制包括哪些(全屋定制包括什么)

全屋定制包括哪些(全屋定制包括什么)

这篇文章给大家聊聊关于全屋定制包括哪些,以及全屋定制包括什么对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年11月3日 16:00

弹弹堂手机版下载(弹弹堂大冒险手游官网如何下载)

弹弹堂手机版下载(弹弹堂大冒险手游官网如何下载)

大家好,关于弹弹堂手机版下载很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于弹弹堂大冒险手游官网如何下载的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年11月3日 15:10

桌面文件不见了怎么恢复(电脑桌面文件不见了怎么恢复)

桌面文件不见了怎么恢复(电脑桌面文件不见了怎么恢复)

今天给各位分享电脑桌面文件不见了怎么恢复的知识,其中也会对电脑桌面文件不见了怎么恢复进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录电脑桌面文件不见了怎么恢复桌面文件不见了怎么恢复电脑桌面文件夹不见怎么办我电脑

2026年11月3日 14:30

找书神器网站(有什么免费小说网站)

找书神器网站(有什么免费小说网站)

本篇文章给大家谈谈找书神器网站,以及有什么免费小说网站对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

2026年11月3日 13:30

uc浏览器极速(uc浏览器极速版绑定微信安全吗)

uc浏览器极速(uc浏览器极速版绑定微信安全吗)

“uc浏览器极速”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看uc浏览器极速(uc浏览器极速版绑定微信安全吗)!本文目录uc浏览器极速版绑定微信安全吗uc极速版赚钱是真的吗《UC浏览器》极速模式设置教程有人让下载uc浏览器

2026年11月3日 12:30

最近更新

热门文章

flash cs6怎么下载(Adobe Flash CS6 Professional在哪下能破解吗)
2026-07-24 09:40:17 浏览:8
标签列表