Android 專案基本架構

安裝好 Android Studio 後,接下來讓我們動手建立第一個 Android 應用程式。我們將使用現代化的 Jetpack Compose 來構建介面。

建立新專案

  1. 開啟 Android Studio,點擊 New Project
  2. 在 "New Project" 視窗中,選擇 Phone and Tablet 類別。
  3. 選取 Empty Activity (注意圖示上有 Compose 標誌的那一個)。這是目前 Google 推薦的預設 Compose 樣板。
    • (備註:舊版可能會看到 "Empty Compose Activity",新版 Android Studio 已將其簡化為 "Empty Activity")
  4. 點擊 Next

設定專案資訊

填寫以下欄位:

  • Name:應用程式名稱,例如 My First App
  • Package name:唯一的應用程式識別碼,通常是網域反轉格式,例如 com.example.myfirstapp。這會影響上架後的 App ID。
  • Save location:專案儲存位置。
  • Language:選擇 Kotlin (Compose 僅支援 Kotlin)。
  • Configuration Language:推薦選擇 Kotlin DSL (build.gradle.kts),這是目前的現代化標準。
  • Minimum SDK:選擇 App 支援的最低 Android 版本。目前建議選擇 API 24 (Android 7.0) 或更高,這能涵蓋 95% 以上的裝置。

點擊 Finish,Android Studio 會開始建立專案並同步 Gradle,這可能需要幾分鐘。

認識主程式碼 MainActivity.kt

專案建立完成後,打開 app/src/main/java/com/example/myfirstapp/MainActivity.kt。這是 App 的進入點。你會看到類似這樣的程式碼:

package com.example.myfirstapp

import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import com.example.myfirstapp.ui.theme.MyFirstAppTheme

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyFirstAppTheme {
                // A surface container using the 'background' color from the theme
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colorScheme.background
                ) {
                    Greeting("Android")
                }
            }
        }
    }
}

@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Text(
        text = "Hello $name!",
        modifier = modifier
    )
}

@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
    MyFirstAppTheme {
        Greeting("Android")
    }
}

程式碼解析

  1. MainActivity:繼承自 ComponentActivity,是 Android App 的容器。
  2. setContent:在 onCreate 中呼叫,用來設定 Compose UI 的內容。這取代了傳統 XML 時代的 setContentView
  3. MyFirstAppTheme:這是專案的主題包裝器,負責定義顏色、字體等樣式。
  4. Surface:一個基礎的平面容器,這裡設定為填滿螢幕 (fillMaxSize) 並使用主題背景色。
  5. Greeting:這是一個自定義的 Composable 函式
    • @Composable 註解告訴編譯器這是一個 UI 建構函式。
    • Text(...) 是一個內建的 Composable,用來顯示文字。
  6. Preview@Preview 註解允許你在 Android Studio 的設計視窗中即時預覽 UI,而不需要執行 App。

執行應用程式

方法一:使用預覽 (Preview)

在程式碼編輯器的右側(如果沒看到,點擊右上角的 "Split" 或 "Design"),你應該能看到 GreetingPreview 的預覽畫面,顯示 "Hello Android!"。 試著將 Greeting("Android") 改成 Greeting("World"),你會發現預覽畫面會自動更新。

方法二:使用模擬器 (Emulator)

  1. 在工具列上方找到裝置下拉選單,選擇一個模擬器(如果沒有,請點擊 Device Manager 建立一個)。
  2. 點擊綠色的 Run 按鈕 (三角形圖示) 或按 Shift + F10(Windows)/ ^ + R(Mac)。
  3. 等待編譯完成,模擬器啟動並自動打開你的 App。

方法三:使用實體裝置

  1. 開啟手機的 開發者選項 並啟用 USB 偵錯
  2. 透過 USB 線將手機連接到電腦。
  3. 在裝置下拉選單中選擇你的手機。
  4. 點擊 Run

恭喜!你已經成功建立並執行了第一個 Android App。在下一章,我們將深入了解這個專案的檔案結構,看看究竟還有哪些重要的檔案。