共用方式為


在 Windows 上進行原生 Android 開發使用者入門

本指南將協助您使用 Windows 建立原生 Android 應用程式。 如果您想要跨平台解決方案,請參閱 Windows 上的 Android 開發概述,以取得一些選項的簡短摘要。

建立原生 Android 應用程式最直接的方法是使用 Android Studio 搭配 Java 或 Kotlin,不過如果您有特定目的,也可以使用 C 或 C++ 進行 Android 開發。 Android Studio SDK 工具將您的程式碼、資料和資源檔案編譯為封存的 Android 套件 (.apk 檔案)。 一個 APK 檔案會包含 Android 應用程式的所有內容,Android 裝置使用該檔案來安裝應用程式。

安裝 Android Studio

Android Studio 是 Google Android 作業系統的官方整合開發環境。 下載適用於 Windows 的最新版 Android Studio

  • 如果您下載的是 .exe 檔案 (建議),請按兩下啟動它。
  • 如果您下載的是 .zip 檔案,請解壓縮 ZIP 檔,將 android-studio 資料夾複製到 Program Files 資料夾中,然後打開 android-studio > bin 資料夾並,然後啟動 studio64.exe (適用於64 位元電腦) 或studio.exe (適用於 32 位元電腦)。

請按照 Android Studio 中的設定精靈進行操作,並安裝其建議的所有 SDK 套件。 當有新工具和其他 API 可用時,Android Studio 將透過快顯視窗通知您,或透過選取說明>檢查更新來查看更新內容。

建立新專案

選取檔案>新增>新增專案

選擇您的專案視窗中,您將能夠選擇以下範本:

  • 基本活動:建立一個簡單的應用程式,其中包含應用程式列、浮動動作按鈕和兩個版面配置檔案:一個用於活動,另一個用於分隔文字內容。

  • 空白活動:建立一個空白活動和一個包含範例文字內容的版面配置檔案。

  • 底部導覽活動:建立活動的標準底部導覽列。 有關這方面的更多資訊,請參閱 Google 材料設計指南的底部導覽員建一節。

  • 範本通常用來將活動新增至新的和現有的應用程式模組。 例如,若要為應用程式的使用者建立登入畫面,請使用「登入活動」範本新增活動。 若要深入了解如何選取活動,以及如何從範本新增程式碼,請參閱 Google 的 Android 開發人員指南

注意

Android 作業系統是以元件的概念為基礎,並使用術語活動意圖來定義互動。 活動代表使用者可以執行的單一焦點工作。 活動會提供視窗,用於使用根據檢視類別的類別建立使用者介面。 Android 作業系統中的活動具有生命週期,由六個回呼所定義:onCreate()onStart()onResume()onPause()onStop()onDestroy()。 活動元件使用意圖物件彼此互動。 意圖定義要啟動的活動或描述要執行的動作類型 (系統會為您選擇適當的活動,甚至可能來自不同的應用程式)。 在 Google 的 Android 開發人員指南中了解更多有關活動、活動生命週期和意圖的資訊。

Java 或 Kotlin

Java 於 1991 年成為一種語言,由當時的 Sun Microsystems 開發,但現在歸 Oracle 所有。 Java 已成為最熱門且強大的程式設計語言之一,擁有世界上最大的支援社群。 Java 是以類別為基礎且為物件導向,其設計目的是要盡量減少實作相依性。 其語法與 C 和 C++ 類似,但相較於後兩者,Java 的低層級設施比較少。

Kotlin 於 2011 年首次由 JetBrains 宣佈為新的開源語言,並自 2017 年起作為 Java 的替代語言納入 Android Studio 中。 2019 年 5 月,Google 宣布 Kotlin 成為 Android 應用開發者的首選語言,因此儘管它是一種較新的語言,但它也擁有強大的支援社區,並被認為是成長最快的程式語言之一。 Kotlin 屬於跨平台的靜態類型,其設計目的是要與 Java 完全互通。

Java 更廣泛地用於更廣泛的應用程式,並提供了一些 Kotlin 沒有的功能,例如檢查異常、非類別的原始類型、靜態成員、非私有欄位、萬用字元類型和三元運算子。 Kotlin 專為 Android 設計,並受到 Android 推薦。 它還提供了一些 Java 不具備的功能,例如由類型系統控制的 Null 參考、無原始類型、不因陣列而異、適當的函式類型 (與Java 的 SAM 轉換相反)、無萬用字元的使用站點差異、智慧轉換等。 在 Kotlin 文件中更深入地了解與 Java 的比較。

最低 API 層級

您需要決定應用程式的最低 API 層級。 這會決定您的應用程式將支援哪個版本的 Android。 較低的 API 層級較舊,通常可以支援更多裝置,但較高的 API 等級較新,可提供更多功能。

Android Studio 最低 API 選取畫面

選取協助我選擇連結可開啟比較圖表,顯示裝置支援發佈以及與平台版本發行相關的關鍵功能。

Android Studio 最低 API 比較畫面

即時應用程式支援和 Androidx 成品

您可能會發現專案建立選項中有一個支援即時應用程式核取方塊和另一個使用 androidx 成品核取方塊。 建議的預設為不勾選即時應用程式支援,但勾選 androidx

Google Play 即時應用程式讓人們無需先安裝即可試用應用程式或遊戲。 這些即時應用程式可以在 Play 商店、Google 搜尋、社交網路以及任何您分享連結的地方顯示。 勾選支援即時應用程式方塊,代表您要求 Android Studio 在您的專案中包含 Google Play 即時開發 SDK。 請參閱 Android 開發者指南,以了解有關 Google Play 即時應用程式的更多資訊。

AndroidX 成品代表了新版本的 Android 支援庫,並提供跨 Android 版本的向下相容性。 AndroidX 為所有可用套件提供以字串 androidx 開頭的一致命名空間。

注意

AndroidX 現在是預設程式庫。 若要取消核取此方塊,並使用先前的支持連結庫,需要移除最新的 Android Q SDK。 如需說明,請參閱 StackOverflow 上的取消選取使用 Androidx 成品,但請注意,先前的支援庫包已對應到相應的 androidx.* 套件中。 有關所有舊類別和組件成品到新類別的完整對應,請參閱移轉到 AndroidX

專案檔

Android Studio 專案視窗包含以下檔案 (確保從下拉式功能表中選取 Android 檢視):

應用程式 > java > com.example.myfirstapp > MainActivity

應用程式的主要活動和進入點。 當您建置並執行應用程式時,系統會啟動此活動的執行個體並載入其版面配置。

應用程式 > res > 版面配置 > activity_main.xml

定義活動使用者介面 (UI) 版面配置的 XML 檔案。 其包含一個帶有文字「Hello World」的 TextView 元素

應用程式 > 資訊清單 > AndroidManifest.xml

描述應用程式及其每個元件基本特性的資訊清單檔案。

Gradle Scripts > build.gradle

有兩個具有此名稱的檔案:「專案:我的第一個應用程式」(針對整個專案) 和「模組:應用程式」(針對每個應用程式模組)。 一個新專案一開始只會有一個模組。 使用模組的 build.file 來控制 Gradle 外掛程式如何建置您的應用程式。 在 Android 開發人員指南中進一步了解如何設定建置。

使用 C 或 C++ 進行 Android 遊戲開發

Android 作業系統的設計目的是支援以 Java 或 Kotlin 編寫的應用程式,且受益於系統架構中內嵌的工具。 許多系統功能 (例如 Android UI 和 Intent 處理) 僅透過 Java 介面公開。 在某些情況下,儘管會遇到一些相關挑戰,您可能還是會希望透過 Android 原生開發套件 (NDK) 使用 C 或 C++ 程式碼。 遊戲開發就是一個例子,因為遊戲通常會使用以 OpenGL 或 Vulkan 編寫的自訂轉譯邏輯,並從大量以遊戲開發為主的 C 程式庫中受益。 使用 C 或 C++ 還可以幫助您從裝置中擠出額外的效能,以實現低延遲或執行計算密集型應用程式,例如實體模擬。 然而,NDK 並不適合大多數新手 Android 程式設計師。 除非因為特定目的而使用 NDK,否則建議您使用 Java、Kotlin 或其中一個跨平台架構

若要使用 C/C++ 支援建立新專案:

  • 在 Android Studio 精靈的選擇您的專案區段中,選取原生 C++* 專案類型。 選取下一步,完成剩餘的欄位,然後再次選取下一步

  • 在精靈的自訂 C++ 支援區段中,您可以使用 C++ 標準欄位自訂專案。 使用下拉式清單選取您要使用的 C++ 標準化。 選取工具鏈預設值來使用預設的 CMake 設定。 選取 [完成]。

  • Android Studio 建立新專案後,您可以在專案窗格中找到 cpp 資料夾,其中包含原生來源檔案、標頭、CMake 或 ndk-build 的組建指令碼,以及屬於專案的預建程式庫。 您也可以在 src/main/cpp/ 資料夾中找到範例 C++ 原始檔案 native-lib.cpp,它提供了一個傳回字串「Hello from C++」的簡單 stringFromJNI() 函式。 此外,您應該會在模組的根目錄中看到建置原生程式庫所需的 CMake 組建指令碼 CMakeLists.txt

若要深入了解如何將 C 和 C++ 程式代碼新增至專案,請參閱 Android 開發人員指南。 若要尋找具有 C++ 整合的 Android NDK 範例,請參閱 GitHub 上的 Android NDK 範例存放庫。 若要在 Android 上編譯和執行 C++ 遊戲,請使用 Google Play 遊戲服務 API

設計指導方針

裝置使用者預期應用程式以某種方式呈現和運作…無論是撥動、點選或使用語音控制,使用者都會對應用程式的外觀和使用方式抱有特定的期望。 這些期望應該保持一致,以減少混淆和挫折。 Android 提供了這些平台和裝置期望的指南,該指南結合了視覺和導覽模式的 Google Material Design 基礎,以及相容性、效能和安全性的品質指南。

Android 設計文件中深入了解。

適用於 Android 的 Fluent Design 系統

Microsoft 還提供設計指南,其目標是在整個 Microsoft 行動應用程式組合中提供無縫體驗。

適用於 Android 的 Fluent Design 系統設計和建置原生 Android 的自訂應用程式,同時仍然具有獨特的流暢性。

其他資源