📱 Android 应用开发全流程指南:从代码编辑到 APK 发布
一、环境搭建
1. 安装必备工具
| 工具 | 说明 |
|---|---|
| Android Studio | 官方 IDE,内置 Gradle、模拟器、调试器 |
| JDK 17+ | Java 开发环境(Android Studio 自带) |
| Android SDK | 编译和运行所需的平台工具 |
| Gradle | 构建系统(Android Studio 自带) |
安装步骤:
1. 下载 Android Studio(官网:developer.android.com) 2. 运行安装程序,首次启动会自动下载 SDK 3. 通过 SDK Manager 安装所需 API Level(推荐 API 34/35) 4. 通过 AVD Manager 创建模拟器(或连接真机开启 USB 调试)2. 项目结构概览
MyApp/ ├── app/ │ ├── src/ │ │ ├── main/ │ │ │ ├── java/com/example/myapp/ ← Kotlin/Java 源码 │ │ │ ├── res/ ← 资源文件(布局、图片、字符串) │ │ │ ├── AndroidManifest.xml ← 应用清单(权限、组件声明) │ │ │ └── assets/ ← 原始资源文件 │ │ ├── test/ ← 单元测试 │ │ └── androidTest/ ← UI 测试 │ └── build.gradle.kts ← 模块级构建脚本 ├── build.gradle.kts ← 项目级构建脚本 ├── settings.gradle.kts ← 项目设置 ├── gradle/ ← Gradle Wrapper └── gradlew / gradlew.bat ← Gradle 执行脚本二、编写代码
1. 创建新项目
在 Android Studio 中:
File → New → New Project → 选择模板(如 Empty Activity)关键配置:
- Name: 应用名称(如
MyApp) - Package name: 包名(如
com.example.myapp),这是应用的唯一标识 - Language: 选择Kotlin(官方推荐)或 Java
- Minimum SDK: 最低支持版本(如 API 24 覆盖 95%+ 设备)
2. 编写核心代码
📄MainActivity.kt— 主界面逻辑
packagecom.example.myappimportandroid.os.Bundleimportandroid.widget.Buttonimportandroid.widget.TextViewimportandroidx.appcompat.app.AppCompatActivityclassMainActivity:AppCompatActivity(){overridefunonCreate(savedInstanceState:Bundle?){super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)valtextView:TextView=findViewById(R.id.textView)valbutton:Button=findViewById(R.id.button)button.setOnClickListener{textView.text="Hello, Android! 🎉"}}}📄res/layout/activity_main.xml— 界面布局
<?xml version="1.0" encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"android:orientation="vertical"android:padding="16dp"><TextViewandroid:id="@+id/textView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Welcome!"android:textSize="24sp"/><Buttonandroid:id="@+id/button"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="16dp"android:text="Click Me"/></LinearLayout>📄AndroidManifest.xml— 应用清单
<?xml version="1.0" encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"><!-- 声明需要的权限 --><uses-permissionandroid:name="android.permission.INTERNET"/><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:theme="@style/Theme.MyApp"><activityandroid:name=".MainActivity"android:exported="true"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity></application></manifest>3.build.gradle.kts(模块级)关键配置
plugins{id("com.android.application")id("org.jetbrains.kotlin.android")}android{namespace="com.example.myapp"compileSdk=35defaultConfig{applicationId="com.example.myapp"minSdk=24targetSdk=35versionCode=1versionName="1.0.0"}buildTypes{release{isMinifyEnabled=true// 开启代码混淆isShrinkResources=true// 压缩无用资源proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"),"proguard-rules.pro")}}compileOptions{sourceCompatibility=JavaVersion.VERSION_17 targetCompatibility=JavaVersion.VERSION_17}kotlinOptions{jvmTarget="17"}}dependencies{implementation("androidx.core:core-ktx:1.13.1")implementation("androidx.appcompat:appcompat:1.7.0")implementation("com.google.android.material:material:1.12.0")implementation("androidx.constraintlayout:constraintlayout:2.1.4")}三、调试与测试
1. 运行应用
# 命令行方式./gradlew assembleDebug# 编译 Debug APK./gradlew installDebug# 安装到已连接设备# 或通过 Android Studio:# 点击 ▶ Run 按钮,选择设备(模拟器或真机)Debug 模式常用技巧:
- 🐛断点调试:在代码行号旁点击设置断点 → 以 Debug 模式运行
- 📋Logcat:
Log.d("TAG", "message")查看日志 - 🔍Layout Inspector:实时查看 UI 层级结构
- ⚡Apply Changes:代码修改后热更新(无需重新安装)
2. 编写测试
// app/src/test/java/com/example/myapp/ExampleUnitTest.ktimportorg.junit.Assert.assertEqualsimportorg.junit.TestclassExampleUnitTest{@Testfunaddition_isCorrect(){assertEquals(4,2+2)}}./gradlewtest# 运行单元测试./gradlew connectedAndroidTest# 运行 UI 测试(需要设备)四、签名与构建 Release APK
1. 生成签名密钥
keytool-genkeypair\-v\-keystorerelease-key.jks\-keyalgRSA\-keysize2048\-validity10000\-aliasmykey⚠️务必妥善保管
.jks文件和密码!丢失后无法更新应用!
2. 配置签名信息
在build.gradle.kts中:
android{signingConfigs{create("release"){storeFile=file("release-key.jks")storePassword=System.getenv("KEYSTORE_PASSWORD")// 推荐用环境变量keyAlias="mykey"keyPassword=System.getenv("KEY_PASSWORD")}}buildTypes{release{signingConfig=signingConfigs.getByName("release")isMinifyEnabled=trueisShrinkResources=trueproguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"),"proguard-rules.pro")}}}3. 构建 Release APK
./gradlew clean assembleRelease生成的 APK 位于:
app/build/outputs/apk/release/app-release.apk4. 构建 App Bundle(Google Play 推荐)
./gradlew clean bundleRelease生成 AAB 文件:
app/build/outputs/bundle/release/app-release.aab📦AAB vs APK:AAB 由 Google Play 根据用户设备动态生成优化 APK,体积更小。
五、发布分发
方案 A:Google Play 商店
1. 注册 Google Play 开发者账号(一次性费用 $25) 2. 进入 Google Play Console → 创建应用 3. 填写应用信息(名称、描述、截图、图标、隐私政策) 4. 上传 AAB 文件 5. 设置定价和分发国家 6. 提交审核(通常 1-3 天)方案 B:直接分发 APK
1. 将 APK 上传至网站、网盘或第三方应用市场 2. 用户下载后需允许"安装未知来源应用" 3. 注意:国内可上架各大应用商店(华为、小米、OPPO、vivo 等)方案 C:国内应用商店(中国大陆常用)
| 商店 | 开发者平台 |
|---|---|
| 华为应用市场 | developer.huawei.com |
| 小米应用商店 | dev.mi.com |
| OPPO 软件商店 | open.oppomobile.com |
| vivo 应用商店 | dev.vivo.com.cn |
| 应用宝 | app.open.qq.com |
| 360 手机助手 | dev.360.cn |
各商店需注册开发者账号,提交企业资质、软著证书等审核材料。
六、完整流程图
┌─────────────────────────────────────────────────────────────┐ │ 1. 环境搭建 │ │ Android Studio + JDK + SDK + 模拟器/真机 │ ├─────────────────────────────────────────────────────────────┤ │ 2. 创建项目 │ │ New Project → 选模板 → 配置包名、SDK、语言 │ ├─────────────────────────────────────────────────────────────┤ │ 3. 编写代码 │ │ Kotlin/Java 逻辑 + XML/Compose 布局 + Manifest 配置 │ ├─────────────────────────────────────────────────────────────┤ │ 4. 调试测试 │ │ Debug 运行 + Logcat + 单元测试 + UI 测试 │ ├─────────────────────────────────────────────────────────────┤ │ 5. 签名构建 │ │ 生成密钥 → 配置签名 → assembleRelease / bundleRelease │ ├─────────────────────────────────────────────────────────────┤ │ 6. 发布分发 │ │ Google Play / 国内商店 / 直接分发 APK │ └─────────────────────────────────────────────────────────────┘七、常用命令速查表
| 命令 | 说明 |
|---|---|
./gradlew assembleDebug | 构建 Debug APK |
./gradlew assembleRelease | 构建 Release APK |
./gradlew bundleRelease | 构建 App Bundle |
./gradlew installDebug | 安装 Debug 版到设备 |
./gradlew test | 运行单元测试 |
./gradlew clean | 清理构建产物 |
./gradlew signingReport | 查看签名信息 |
./gradlew dependencies | 查看依赖树 |
八、进阶建议
- 🏗️架构模式:学习 MVVM + Repository 架构
- 🎨现代 UI:学习 Jetpack Compose(声明式 UI,替代 XML 布局)
- 💉依赖注入:使用 Hilt / Koin
- 🗄️本地存储:Room(SQLite 封装)、DataStore(替代 SharedPreferences)
- 🌐网络请求:Retrofit + OkHttp + Kotlin Coroutines
- 🔄导航:Jetpack Navigation Component
- 📊性能优化:使用 Android Profiler 分析内存、CPU、网络
- 🔐安全:使用 EncryptedSharedPreferences、ProGuard/R8 混淆