# Android 项目编译 Debug 和 Release 版本 APK 的方法 ## 项目信息 - **项目名称**: com.xunpaisoft.social - **项目路径**: D:\zhini\android-im - **JDK 要求**: Java 11 或更高版本 - **推荐 JDK**: Android Studio 内置 JDK 21 ## 环境准备 ### 1. 检查 Java 版本 ```bash java -version ``` **注意**: 如果系统只有 Java 8,需要使用 Android Studio 的 JDK 21 ### 2. 设置环境变量 ```powershell # 设置 Android Studio JDK 路径 $env:JAVA_HOME="C:\Program Files\Android\Android Studio1\jbr" # 设置 Android SDK 路径 $env:ANDROID_HOME="C:\Users\$env:USERNAME\AppData\Local\Android\Sdk" ``` ## 编译方法 ### 方法一:使用 Gradle Wrapper(推荐) #### 1. Debug 版本编译 ```bash # 设置环境变量并编译 Debug 版本 $env:JAVA_HOME="C:\Program Files\Android\Android Studio1\jbr"; $env:ANDROID_HOME="C:\Users\$env:USERNAME\AppData\Local\Android\Sdk"; .\gradlew.bat assembleDebug ``` **编译结果**: - ✅ 编译状态: BUILD SUCCESSFUL - ⏱️ 编译时间: 约 34 秒 - 📁 APK 位置: `app\build\outputs\apk\debug\app-debug.apk` #### 2. Release 版本编译 ```bash # 设置环境变量并编译 Release 版本 $env:JAVA_HOME="C:\Program Files\Android\Android Studio1\jbr"; $env:ANDROID_HOME="C:\Users\$env:USERNAME\AppData\Local\Android\Sdk"; .\gradlew.bat assembleRelease ``` **编译结果**: - ✅ 编译状态: BUILD SUCCESSFUL - ⏱️ 编译时间: 约 3分48秒 - 📁 APK 位置: `app\build\outputs\apk\release\app-release.apk` ### 方法二:使用 Android Studio(最简单) 1. **打开 Android Studio** 2. **导入项目**: 选择 `D:\zhini\android-im` 目录 3. **等待 Gradle 同步完成** 4. **编译项目**: - **Debug 版本**: `Build` → `Build Bundle(s) / APK(s)` → `Build APK(s)` - **Release 版本**: `Build` → `Generate Signed Bundle / APK` → `APK` ## 安装 APK 到设备 ### 安装 Debug 版本 ```bash adb install -r app\build\outputs\apk\debug\app-debug.apk ``` ### 安装 Release 版本 ```bash adb install -r app\build\outputs\apk\release\app-release.apk ``` ## 版本对比 | 特性 | Debug 版本 | Release 版本 | |------|------------|--------------| | **编译时间** | 约 34 秒 | 约 3分48秒 | | **APK 大小** | 较大 | 较小(优化后) | | **代码混淆** | 否 | 是(ProGuard) | | **调试信息** | 包含 | 移除 | | **性能** | 较慢 | 较快 | | **用途** | 开发测试 | 正式发布 | ## 常见问题解决 ### 问题1: Java 版本不兼容 **错误信息**: `Dependency requires at least JVM runtime version 11. This build uses a Java 8 JVM.` **解决方案**: ```bash # 停止现有 Gradle daemon .\gradlew.bat --stop # 使用 Android Studio JDK 编译 $env:JAVA_HOME="C:\Program Files\Android\Android Studio1\jbr"; .\gradlew.bat assembleDebug ``` ### 问题2: Gradle Wrapper 不存在 **解决方案**: 项目已包含 `gradlew.bat` 文件,如果缺失可以重新创建。 ### 问题3: 权限重复警告 **现象**: 编译时出现权限重复警告 **影响**: 不影响编译,但建议清理重复权限声明 ## 编译命令总结 ### 一键编译脚本 ```powershell # Debug 版本一键编译 $env:JAVA_HOME="C:\Program Files\Android\Android Studio1\jbr"; $env:ANDROID_HOME="C:\Users\$env:USERNAME\AppData\Local\Android\Sdk"; .\gradlew.bat assembleDebug # Release 版本一键编译 $env:JAVA_HOME="C:\Program Files\Android\Android Studio1\jbr"; $env:ANDROID_HOME="C:\Users\$env:USERNAME\AppData\Local\Android\Sdk"; .\gradlew.bat assembleRelease ``` ### 清理和重新编译 ```bash # 清理项目 .\gradlew.bat clean # 重新编译 Debug 版本 .\gradlew.bat assembleDebug # 重新编译 Release 版本 .\gradlew.bat assembleRelease ``` ## 注意事项 1. **JDK 版本**: 必须使用 Java 11 或更高版本 2. **环境变量**: 每次编译前需要设置正确的 JAVA_HOME 3. **签名配置**: Release 版本需要配置签名文件 4. **混淆规则**: Release 版本会应用 ProGuard 混淆规则 5. **资源优化**: Release 版本会进行资源压缩和优化 ## 文件位置 - **Debug APK**: `app\build\outputs\apk\debug\app-debug.apk` - **Release APK**: `app\build\outputs\apk\release\app-release.apk` - **Gradle Wrapper**: `gradlew.bat` - **构建配置**: `app\build.gradle` ## 成功标志 编译成功后会显示: ``` BUILD SUCCESSFUL in [时间] [数量] actionable tasks: [执行数量] executed, [跳过数量] up-to-date ``` --- **最后更新**: 2025年10月29日 **适用版本**: Android Gradle Plugin 8.7.3 **JDK 版本**: Android Studio JDK 21