作者:@6david9 授權本站轉載
iOS 的應用生命周期
Android Activity 的聲明周期
應用第一次啟動時:
iOS:
Android:
應用進入後台
iOS
Android
應用從後台進入前台
iOS
Android
完全退出應用
iOS
Android
Android 中的 Activity 有點類似 iOS 中的 UIViewController + UIApplication。在 iOS 中打開一個應用,就像在 PC 上打開一個全屏的“窗口”,然後後續的操作都在這個“窗口”中進行,直到用戶關閉這個“窗口”(關閉應用)。打開新的應用是切換到一個新的“窗口”。而 Android 中,每個 Activity 就像是一個新的窗口,打開新的頁面,就是打開一個新的窗口。這些窗口在一個系統的容器中按順序疊加到以前,按返回鍵時,彈出棧頂的那個 Acvitity,Activity 就關閉了。
Android 中的 Intent,就像 iOS 中的通知 + URL路由。iOS 中通知只能在應用內發送,不能跨應用發送,比如應用 A 不能發通知給應用 B。但是 Android 的頁面都由一個個獨立的 Activity 組合而成,每個 Activity 可以注冊 Intent-Filter(iOS 中注冊觀察者)響應通知。這樣在 Activity 接受到可以響應的通知後,只需要啟動相應的 Activity 就行了,不用像 iOS 一樣,應用呼起就整個應用都啟動了(沒用到的 View Controller 不一定在應用啟動時創建)。Intent 還有有點類似 iOS 中的 Open URL 功能,通過自定義 URL,執行不同的操作。只不過 iOS 中打開別的應用用的是 URL,而 Android 中用的是點分的字符串(但是概念類似)。