@echo off chcp 65001 >nul setlocal enabledelayedexpansion echo ======================================== echo 心理测试APP - APK打包工具 echo ======================================== echo. REM 获取当前脚本所在目录的绝对路径 set "PROJECT_DIR=%~dp0" set "PROJECT_DIR=%PROJECT_DIR:~0,-1%" echo 请选择打包类型: echo 1. Debug版本(用于测试) echo 2. Release版本(用于发布) echo. set /p choice=请输入选项 (1 或 2): if "%choice%"=="1" ( REM 检查gradlew.bat是否存在 if not exist "gradlew.bat" ( echo. echo 错误:找不到 gradlew.bat 文件! echo. echo 请先运行以下脚本之一来初始化Gradle Wrapper: echo 1. 下载GradleWrapper.bat - 自动下载所需文件 echo 2. 初始化Gradle.bat - 使用gradle命令初始化(需要先安装Gradle) echo. echo 或者使用Android Studio打开项目,它会自动生成Gradle Wrapper文件。 echo. pause exit /b 1 ) REM 检查gradle-wrapper.jar是否存在 if not exist "gradle\wrapper\gradle-wrapper.jar" ( echo. echo 错误:找不到 gradle-wrapper.jar 文件! echo. echo 请运行 下载GradleWrapper.bat 来下载所需文件。 echo. pause exit /b 1 ) echo. echo 正在打包Debug版本... call gradlew.bat assembleDebug if %errorlevel%==0 ( set "APK_PATH=%PROJECT_DIR%\app\build\outputs\apk\debug\app-debug.apk" if exist "!APK_PATH!" ( echo. echo ======================================== echo 打包成功! echo. echo 相对路径: app\build\outputs\apk\debug\app-debug.apk echo 绝对路径: !APK_PATH! echo. echo 文件大小: for %%A in ("!APK_PATH!") do echo %%~zA 字节 echo ======================================== echo. echo 是否打开APK所在文件夹?(Y/N) set /p openFolder= if /i "!openFolder!"=="Y" ( explorer /select,"!APK_PATH!" ) ) else ( echo. echo 警告:APK文件未找到! echo 预期位置: !APK_PATH! echo 请检查构建日志中的错误信息 ) ) else ( echo. echo 打包失败,请检查错误信息 ) ) else if "%choice%"=="2" ( REM 检查gradlew.bat是否存在 if not exist "gradlew.bat" ( echo. echo 错误:找不到 gradlew.bat 文件! echo. echo 请先运行以下脚本之一来初始化Gradle Wrapper: echo 1. 下载GradleWrapper.bat - 自动下载所需文件 echo 2. 初始化Gradle.bat - 使用gradle命令初始化(需要先安装Gradle) echo. echo 或者使用Android Studio打开项目,它会自动生成Gradle Wrapper文件。 echo. pause exit /b 1 ) REM 检查gradle-wrapper.jar是否存在 if not exist "gradle\wrapper\gradle-wrapper.jar" ( echo. echo 错误:找不到 gradle-wrapper.jar 文件! echo. echo 请运行 下载GradleWrapper.bat 来下载所需文件。 echo. pause exit /b 1 ) echo. echo 正在打包Release版本... call gradlew.bat assembleRelease if %errorlevel%==0 ( set "APK_PATH=%PROJECT_DIR%\app\build\outputs\apk\release\app-release.apk" if exist "!APK_PATH!" ( echo. echo ======================================== echo 打包成功! echo. echo 相对路径: app\build\outputs\apk\release\app-release.apk echo 绝对路径: !APK_PATH! echo. echo 文件大小: for %%A in ("!APK_PATH!") do echo %%~zA 字节 echo ======================================== echo. echo 是否打开APK所在文件夹?(Y/N) set /p openFolder= if /i "!openFolder!"=="Y" ( explorer /select,"!APK_PATH!" ) ) else ( echo. echo 警告:APK文件未找到! echo 预期位置: !APK_PATH! echo 请检查构建日志中的错误信息 ) ) else ( echo. echo 打包失败,请检查错误信息 ) ) else ( echo 无效的选项 pause exit /b 1 ) echo. pause