001-android 應用開發導論

Views:
81
android 應用程序開發
android 應用程序開發

歡迎使用 android 應用程序開發指南! This post series aims to teach the basics of Android app development in Android Studio using Java programming language. 我假設你唔 #8217, 冇任何 java 或 android 編程嘅經驗, 喺呢個帖子系列開始.

我就用簡單嘅術語嚟解釋應用程序開發的每一點. 會由零開始, 就可以轉換你嘅想法, 以您自己的應用程序完成之後, 呢篇文章系列.

一個單一的帖子系列顯然不能讓你嘅平台或編程語言的最好的專家, 但會有一個紮實的背景和實踐經驗, 在 android 應用程序的開發與此後系列.
使用 eclipse 集成開發環境開發 android 應用程序 (ide) 使用 android 開發工具 (adt) 舊時嘅插件. 然而, 穀謌推出 android 工作室作為 android 應用程序開發嘅官方 ide 2014 呢個 ide 成為了標準. 最新的穩定版本係安卓工作室 2.2, 將被用于篇文系列.

android 操作系統

由概述 android 操作系統的基本原理和相關概念, 然後開始我哋嘅編程旅程.

android 操作系統是一個開源的移動操作系統. 佢係 linux 的變體, 因此提供了廣泛的安全性, 移動設備級別的糢塊化和生產率. android 係由被稱為 "開放式耳筒聯盟" 的組織開發和維護的。 (oha). oha 成立於 2007 穀謌是其最重要的成員. oha 包括好多著名嘅硬件同軟件公司.

最初, android 係由一個叫 android 嘅公司創建的. 穀謌收購呢間公司 2005. 之後, 穀謌令佢開源同 android 獲得了一個巨大的勢頭. android 的市場佔有率 85% 在 2016 如圖所示 1.1 (數據源: http://www.idc.com/). 考慮到呢個市場份額, 顯然係有益嘅投資 android 應用程序開發

android 應用程序開發簡介

android 有七主要版本, 個個有幾個細嘅修改. 為咗更容易地跟隨這些版本, 開發人員用 cookie 名稱命名. android 的流行版本係奇巧 (android 4.4), 正 (android 5.1) 和棉花糖 (android 6.0) (https://www.statista.com/statistics/271774/share-of-android-platformson-mobile-devices-with-android-os/). 牛 (android 7.0) 也越來越受歡迎. 隨住版本嘅增加, android 變得更加有能力. 然而, 在應用程序開發過程中, 我哋一定要小心選擇該版本, 因並非每個設備都使用最新版本. 如果我們開發一個應用程序的棒糖, 佢可能唔會安裝了 froyo 緊嘅設備上運行. 好彩呀, android 工作室令我哋可以選擇設置兼容性.

android 不僅用于 智能 而且在片劑, 上網本, 數字電視盒, 手持遊戲設備, 甚至喺單板電腦, 如 udoo. 因此, 我們首先需要選擇目標設備(s) 和版本(s) 在開發應用程序之前.

android 應用程序是如何工作的?

在各種平台上運行的程序有唔同嘅方式. 最低水平的軟件可以寫喺機代碼, 直接運行在微處理器.

因為好難喺機代碼中開發複雜的應用, 使用操作系統. 操作系統應用軟件和硬件之間提供通信和控制緊層.

如果我哋要開發一個本機應用程序以喺特定嘅硬件/操作系統上運行, 我們必須使用編譯器和連結程序嚟噉做.

編譯器和連結程序使用源代碼並創建實際運行在操作系統上的可執行文件. 例如, 如果我哋想用 c++ 編程語言開發一個應用程序, 我哋一定要利用編譯/連結過程.
機代碼硬件本機應用程序的主要優點是其速度. 然而, 缺點係唔同平台之間嘅唔兼容.

例如, 我哋唔可以 ubuntu 上運行緊本地 windows 應用程序, 反之亦然. 為咗克服侷限性, 開發了虛擬機概念.

虛擬機係喺操作系統上運行並為開發人員提供抽象的軟件。 應用程序軟件喺虛擬機上運行.

因此, 只要電腦運行了虛擬機, 應用程序軟件可以喺獨立於硬件和操作系統的電腦上運行.

一個好好嘅例子就係 java 虛擬機 (jvm). jvm 幾乎在所有操作系統和平台上運行. 因此, 當我哋開發 java 軟件, 佢就喺獨立於操作系統/平台嘅 jvm 上運行.
開發虛擬機上運行緊嘅應用程序的明顯優勢, 可以話係: "開發一次, 在所有平台上運行". 然而, 在虛擬機上運行的應用程序過本機應用程序慢. The general development process of virtual machine applications is summarized.

android virtual machine diagram

Similar to Java applications, Android applications also run on a JVM. There are two special virtual machines used in Android: Dalvik Virtual Machine (DVM) and Android RunTime (ART).

These are specialized JVMs which can run on low system resources. The .apk files (executables of Android apps) actually run on these virtual machines.

DVM has been the default runtime environment (~ virtual machine) until the Lollipop release (android 5.0). 藝術係由 android 引入嘅 4.0 並係默認的 vm 開嘅 android 5.0. dvm 同藝術基本上做同樣的工作: 獨立於平台運行 android 應用程序.

藝術系 dvm 的主要優勢是利用的概念被稱為超前的時間 (aot) 編譯, 而唔系只系時間 (jit) 方法. 在 AOT, 應用程序在安裝過程中被編譯, 因此它們加载

更快, CPU 使用率更低. 另一方面, jit 編譯提供了較低的存儲空間消耗, 且加载時間相對較長.