行业门户网站系统,全国最缺工100个职业表,广州外贸公司网站建设,wordpress瓶颈文章目录 1. 下载Apktool1.1 Apktool官网下载1.2 百度网盘下载 2. 安装Apktool3. 使用Apktool3.1 配置Java环境3.2 准备Apk文件3.3 反编译Apk文件3.3.1 解包Apk文件3.3.2 修改Apk文件3.3.3 打包Apk文件3.3.4 签名Apk文件 1. 下载Apktool
要使用Apktool#xff0c;需要准备好 … 文章目录 1. 下载Apktool1.1 Apktool官网下载1.2 百度网盘下载 2. 安装Apktool3. 使用Apktool3.1 配置Java环境3.2 准备Apk文件3.3 反编译Apk文件3.3.1 解包Apk文件3.3.2 修改Apk文件3.3.3 打包Apk文件3.3.4 签名Apk文件 1. 下载Apktool
要使用Apktool需要准备好 apktool.jar 和 apktool.bat。
我准备了两种下载方式可自行选择
apktool官网下载地址百度网盘下载链接
1.1 Apktool官网下载
apktool官网下载地址https://apktool.org/docs/install 1.下载apktool.bat点击高亮字体 wrapper script进入apktool.bat的下载地址我这里显示无法访问链接因此给出替代方案。
自己本地电脑新建一个apktool.bat文件然后使用vscode或者notepad等文本编辑器打开apktool.bat文件并复制以下代码到该文件中
echo off
setlocal
set BASENAMEapktool_
chcp 65001 2nul nulset java_exejava.exeif defined JAVA_HOME (
set java_exe%JAVA_HOME%\bin\java.exe
)rem Find the highest version .jar available in the same directory as the script
setlocal EnableDelayedExpansion
pushd %~dp0
if exist apktool.jar (
set BASENAMEapktool
goto skipversioned
)
set max0
for /f tokens1* delims-_.0 %%A in (dir /b /a-d %BASENAME%*.jar) do if %%~B gtr !max! set max%%~nB
:skipversioned
popd
setlocal DisableDelayedExpansionrem Find out if the commandline is a parameterless .jar or directory, for fast unpack/repack
if %~1 goto load
if not %~2 goto load
set ATTR%~a1
if %ATTR:~0,1%d (
rem Directory, rebuild
set fastCommandb
)
if %ATTR:~0,1%- if %~x1.apk (
rem APK file, unpack
set fastCommandd
):load
%java_exe% -jar -Duser.languageen -Dfile.encodingUTF8 %~dp0%BASENAME%%max%.jar %fastCommand% %*rem Pause when ran non interactively
for /f tokens2 %%# in (%cmdcmdline%) do if /i %%# equ /c pause2.下载apktool.jar
点击高亮字体 latest version进入apktool.jar的下载地址点击下载最新版的apktool_2.9.3.jar下载完成后将apktool_2.9.3.jar重命名为apktool.jar 1.2 百度网盘下载
百度网盘链接 链接https://pan.baidu.com/s/1gmoIO2JABqotrLiaCMxN6g?pwd4m4x 提取码4m4x
2. 安装Apktool
1.将apktool.bat 和 apktool.jar 放到任一同级目录下
如 E:\Applications\Apktool 2.添加该目录路径到 Path 环境变量
右键此电脑-属性-系统-高级系统设置-高级-环境变量打开环境变量修改 Path 变量添加 E:\Applications\Apktool到变量中 3.验证是否安装成功
打开cmd输入apktool 命令显示如下图表示安装成功 3. 使用Apktool
3.1 配置Java环境
要想使用Apktool工具必须先配置Java环境需要安装JDK 1.8以上的版本。
JDK的安装与配置Java环境搭建配置环境变量
3.2 准备Apk文件
准备一个apk文件用于反编译的练习apk文件见 1.2 章节的百度网盘链接 该apk文件打开后样式如下 3.3 反编译Apk文件
反编译apk文件分为四步
解包apk文件对解包后的apk文件进行修改重新打包apk文件对apk文件进行签名签名以后才能够安装到手机
3.3.1 解包Apk文件
切换到apk所在的路径并输入以下命令解压apk文件到当前文件夹
apktool d app-release.apk显示如下图表示解压成功 解压后在app-release.apk文件的同级目录下得到同名文件夹 app-release 3.3.2 修改Apk文件
反编译的目的就是为了修改原来的apk文件修改成自己想要的样子。
原先的的apk样式为红色的 Hello World!此处我想修改成蓝色的 Hello Android!步骤如下
1.使用 vscode 打开 app-release 文件夹找到路径 res/layout/activity_main.xml修改其中的颜色和文本代码如下
android:textColor#0000FF
android:textHello Android!2.修改后的 activity_main.xml 文件内容如下 3.3.3 打包Apk文件
1.META-INF文件夹这里面包含旧的签名文件用不到该文件夹因此删除它 2.使用以下命令打包文件夹生成新的apk文件
apktool b app-release3.3.4 签名Apk文件
1.生成密钥库文件即keystore文件
使用以下命令生成keystore文件
keytool -genkey -alias android_keystore -keyalg RSA -validity 20000 -keystore android.keystore以上各个参数的含义如下 -genkey这个参数表示keytool要生成一个新的密钥对和一个自签名的证书 -alias android_keystore这个参数指定了生成的密钥对和证书的别名alias此处别名为android_keystore这个别名在密钥库中用于唯一标识这个特定的密钥对和证书 -keyalg RSA这个参数指定了用于生成密钥对的算法即RSA算法。RSA是一种广泛使用的非对称加密算法它使用一对密钥一个公钥用于加密数据另一个私钥用于解密数据 -validity 20000这个参数设置了证书的有效期以天为单位此处证书的有效期是20000天 -keystore android.keystore这个参数指定了密钥库keystore的文件名即android.keystore。密钥库是一个用于存储密钥对和证书的数据库文件
当使用keytool生成密钥对和证书时命令执行过程需要输入信息
密钥库的密码此处我填写为 123456密钥对和证书的所有者姓名、组织单位、城市或地区、省/州/郡、国家代码等这些信息将被包含在生成的证书中用于标识证书的所有者。 此时就在当前目录下生成了一个android.keystore文件 2.将刚刚生成的android.keystore文件拷贝到未签名的apk文件同级目录下切换到该路径下输入以下命令进行签名
jarsigner -verbose -keystore android.keystore -signedjar app-release-signed.apk app-release.apk android_keystore以上各个参数的含义如下 jarsigner这是 Java 开发工具包 (JDK) 中的一个工具用于对 JAR 文件、APK 文件等进行签名 -verbose这个参数用于输出详细的签名过程当使用这个参数时jarsigner 会显示更多关于签名步骤的信息这有助于调试和了解签名过程的具体情况 -keystore android.keystore这个参数指定了密钥库文件的路径和名称即 android.keystore -signedjar app-release-signed.apk app-release.apk这个参数指定了签名后的 APK 文件的输出路径和名称即 app-release-signed.apk这个文件是原始 APK 文件 app-release.apk 经过签名后的结果 android_keystore这个参数指定了密钥库中用于签名的密钥对的别名别名是在使用 keytool 生成密钥对时指定的它用于在密钥库中唯一标识这个特定的密钥对 此时就在当前目录下生成了一个app-release-signed.apk文件 3.将新生成的app-release-signed.apk文件拖入到夜神模拟器中安装然后点击打开即可 如果夜神模拟器中原先存在该同名应用需要先卸载掉然后再安装否则可能出现一直在安装中导致安装不成功的情况。