Activity 的啟動模式 以及與AppManager類的關係
Activity的四種啟動模式分別為:standard、singleTop、singleTask、singleInstance
有兩種配置方式
- 清單檔案中的Activity配置使用:android:launchMode=""屬性指定啟動模式
- Intent intent = new Intent(this, MainActivity.class);
//相當於singleTask
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
FLAG_ACTIVITY_NEW_TASK相當於singleTask
下邊說一下每一種啟動模式所代表的意思
1、standard:預設模式,每次啟動都會建立一個新的Activity物件,放到目標任務棧的棧頂
2、singleTop:判斷當前的任務棧頂是否存在相同的Activity,如果存在,直接使用,如果不存在,建立一個新的Activity物件放入棧頂
3、singleTask:在任務棧中判斷是否存在相同的Activity,如果存在,那麼會清楚該Activity之上的所有Activity物件顯示,
如果不存在,建立一個新的Activity物件放入棧頂
4、singleInstance:會在一個新的任務棧中建立Activity,並且該任務棧中只允許存在一個Activity例項,
說起啟動模式,就不得不說AppManager
他是管理Activity的 首先確認啟動模式
接下來
相關文章
- ActivityRecord、TaskRecord、ActivityStack以及Activity啟動模式詳解模式
- Android-Activity的啟動模式Android模式
- Activity啟動模式模式
- Activity生命週期與啟動模式模式
- 類與類之間的基本關係
- 組內技術分享-Activity 的啟動模式模式
- Android學習筆記-Activity的啟動模式Android筆記模式
- 擼擼Android的羊毛(一)----Activity啟動模式Android模式
- View生命週期與Activity生命週期的關係View
- Activity啟動模式(GIF 動態演示)模式
- c++類與類的聚合(Aggregation)關係C++
- Activity啟動模式聯想到多程式相關的一些東西模式
- Java設計模式-類之間的關係Java設計模式
- Activity、View、Window之間關係的分析View
- Activity的啟動模式及IntentFilter匹配規則總結模式IntentFilter
- DDD興起的原因以及與微服務的關係微服務
- Java中類與物件的關係與區別Java物件
- Java類關係之代理(代理模式)Java模式
- 重溫Android四大元件(二)—Activity的啟動模式與標誌位Android元件模式
- 一篇文章搞懂 Activity 啟動模式模式
- Android程式啟動與Activity顯示Android
- 五分鐘看懂UML類圖與類的關係詳解
- 從Activity的啟動流程理解Binder
- 根Activity元件的啟動過程元件
- UML類圖--類之間的關係
- 從Dubbo啟動看Dubbo和Spring的關係Spring
- 【java】類之間的關係Java
- Android Activity是如何啟動的?Activity的生命週期是如何呼叫的?Android
- 介面、抽象類、普通類之間的關係抽象
- [Android]關閉所有Activity,開啟某個ActivityAndroid
- Activity 的 "啟動流程"(基於 Android 9.0)Android
- Android中Activity的四種啟動方式Android
- Firefox的降級與驅動對應關係Firefox
- Object與Class的關係Object
- GNU與Linux 的關係Linux
- Scala與Java的關係Java
- Activity啟動流程分析
- app啟動流程,activity啟動流程時序圖,binder相關資料APP時序圖
- 原始碼閱讀之Activity啟動與App啟動流程 – Android 9.0原始碼APPAndroid