使用命令反编译apk
# 反编译 APK
apktool d xxx.apk -o outdir
# 或者用 jadx
jadx-gui xxx.apk
如果apktool未安装
macos
brew install apktool
Arch Linux
sudo pacman -S apktool
手动安装
1、下载 apktool.jar 和 wrapper 脚本
wget https://raw.githubusercontent.com/iBotPeaches/Apktool/master/scripts/linux/apktool
wget https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_2.9.3.jar -O apktool.jar
2、移动并赋权
chmod +x apktool
sudo mv apktool /usr/local/bin/
sudo mv apktool.jar /usr/local/bin/
反编译后重新打包
apktool b outdir -o new_app.apk
重新签名
# 安装 apksigner 工具(如果没有)
sudo apt install apksigner # Ubuntu
# 或者用 Android SDK 自带的 apksigner
# 签名 APK
apksigner sign --ks ~/.android/debug.keystore --ks-key-alias androiddebugkey --ks-pass pass:android --key-pass pass:android new_app.apk
安装apksigner
1、下载 Android Command Line Tools
mkdir -p ~/android-sdk/cmdline-tools
cd ~/android-sdk
# 下载最新命令行工具(适用于 Linux,如果你是 macOS,请告诉我)
wget https://dl.google.com/android/repository/commandlinetools-linux-10406996_latest.zip
# 解压
unzip commandlinetools-linux-*.zip
mkdir cmdline-tools/latest
mv cmdline-tools/* cmdline-tools/latest/
如果你用的是 macOS,请替换下载链接为:
https://dl.google.com/android/repository/commandlinetools-mac-10406996_latest.zip
然后执行以下命令使其生效:
source ~/.zshrc # 或 source ~/.bashrc
2、配置环境变量
将以下内容添加到 ~/.zshrc 或 ~/.bashrc:
export ANDROID_HOME=$HOME/android-sdk
export PATH=$ANDROID_HOME/cmdline-tools/latest/bin:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
3、使用 sdkmanager 安装 build-tools
sdkmanager --licenses # 接受所有协议(输入 `y` 一直回车)
sdkmanager "build-tools;34.0.0"
执行sdkmanager命令显示jdk版本过低
升级jdk
升级到 Java 17 或更高(建议使用 Java 17,因为 Android SDK 工具通常支持 Java 17)
macOS(用 Homebrew):
brew update
brew install openjdk@17
Ubuntu / Debian:
sudo apt update
sudo apt install openjdk-17-jdk
升级安装完成后,执行:
sudo ln -sfn $(brew --prefix)/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
export PATH="/usr/local/opt/openjdk@17/bin:$PATH"
切换默认 Java 版本(如果你有多个 Java)
macOS 用:
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export PATH=$JAVA_HOME/bin:$PATH
安装
adb install -r new_app.apk