Android官方文檔之Activity和Task

來源:互聯網
上載者:User

什麼知識,看官方的API是最好的了。但是鑒於很多人英語不好,便轉載了這篇文章,翻譯的非常好了。搞不懂Activity聲明周期,和程式架構設計的,最好看一看。
Activity 和 task 的設計摘要
Activity 是 Android 應用的主要組成部分。
除了自己寫Activity之外,你還可以利用intent,輕鬆地重用其它應用的Activity。
你可以讓你應用裡的Activity能被其它應用通過intent使用。
系統的Activity棧幾乎可以處理所有的情況。不過有兩種情況你大概需要自己設定flag之類,來確定the right thing happens。
在本文檔中
Applications,Activity,Activity棧和Task
Activity和Task的一個例子
從主屏開始一個Activity
離開一個Activity
重用一個Activity
替換Activity
多Task
從兩個進入點啟動應用
Intent
在Task之間切換
設計建議
如果你不想你的Activity被重用,不要使用intent filter
注意處理用intent找不到activity的情況
考慮啟動應用的方式
允許Activity加入到當前Task中來
Notification應該讓你的使用者很容易離開
使用Notification系統
如果不是絕對必要,不要自己控制BACK鍵
參考
Application基礎
這個文檔,從高層的、以使用者為中心的視角,描述了Android應用程式框架的 核心原則。這對互動和應用設計者和應用開發人員是有用的。
本文用多個例子說明了Activity和Task,而且描述了一些它們的底層原則和 機制,像導航,多Task,Activity重用,Intent和Activity棧。 文檔還強調了一些你能用到的設計結論,和你如何控制你應用的UI。
這個文檔使用了很多Android應用作為例子,包括一些預設應用, 例如Dialer,以及Google應用,例如Maps。你可以在你的Android模擬器 或者Android的手機上試試它們。注意你的手機或許只提供一部分這些文檔 中的例子應用。
在設計建議部分中,會提到一些原則、 建議、和要避免的事情。Application基礎覆蓋了程式的底層 機制,本文檔是對它的補充和完善。
Applications,Activity,Activity棧和Task
以下四個基本概念有助於你的理解:
Application
Activitie
Activity棧
Task
Application
一個典型的Android Application由一個或多個相關的、松耦合的、使用者可以 與之互動的Activity組成。典型的情況,是一個Application打包進 一個單獨的apk檔案裡。Android會伴隨著一大票的應用,可能包括電子郵件、日曆、瀏覽器、地圖、 簡訊、連絡人、拍照、撥號、音樂播放、設定等等。
Android主屏一般就是應用啟動者。一般來說,是一個有很多應用表徵圖的滑動抽屜(就是預設Android系統下面那個,用手指往上一拖就出現很多表徵圖的那個東西。),使用者可以從上面啟動應用。
Activity
Activity是Android應用的主要組成部分。 當你建立Apllication的時候,你可以自己建立的Activity或者重用其它Application的Activity,來組裝Application。 這些Activity是在運行時綁定在一起的,所以,新安裝的Application能從已安裝的Activity中獲益。 一旦組合在一起,這些Acitivity會像一個整體那樣一起工作。 一個Activity擁有一個獨立的可視UI,這個UI應該基於單獨的、明確界定的意圖。 例如看圖、編輯、撥號打電話、拍照、搜尋、發送資料、語音命令等等其他使用者行為。 一個需要介面顯示的Application至少要有一個Activity。
當使用一個Android裝置時,使用者會從一個介面跳到另一個介面,這種跳轉應該是流暢的。 不應該讓使用者察覺那些底層的行為,比如Activity間或者Task間的切換。
一個Activity持有了一種特定種類的內容(資料),以及接受一系列相關的使用者動作。 一般來說,每個Activity的生命週期,與其他的同一個Application或Task內的Activity是無關的。 每一個Activity獨立地被運行,使用者或者系統可以按需要start、run、pause、resume、stop或者restart這些Activity。 由於這種獨立的特性,有很多種方法可以覆蓋或者重用Activity。
Android提供的撥號程式就是一個Activity組合的例子。這個程式是由4個Activity組合成的: 撥號,連絡人清單,連絡人詳情,和建立連絡人。如下所示:

下面是一些其它的由多個Activity組合的Application的例子:
電子郵件 - 查看目錄、查看訊息列表、查看訊息、寫訊息、配置帳號。
日曆 - 查看日、周、月、計劃,編輯時間,設定屬性,提醒
攝像拍照 - 運行照相機,看圖片列表,看圖,切圖,運行攝像機,看視頻列表,看視頻
遊戲 - 遊戲本身,以及安裝設定
地圖 - 查看當前位置,列表(turn list或者好友名單),詳細資料(好友位置、狀態、照片)
Activity,是組成Application的四種組件中,最重要的一個。另外的組件是, Service,ContentProvider,BroadcaseReceiver。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.