歡迎訪問我的個人博客,原文鏈接:http://wensibo.top/2017/07/03/Binder/ ,未經(jīng)允許不得轉(zhuǎn)載!

大家好,今天想與大家一起分享的是Activity。我們平時接觸的最多的就是Activity了,作為四大組件中最為重要的老大,Activity究竟是如何啟動的呢?這篇文章將會從源碼的角度為大家進(jìn)行全方位的解析,為了方便大家理解整個的過程,我會用流程圖的方式將整個過程串起來,希望對大家有所幫助。

開始吧!

一般我們啟動Activity有兩種方法,這里我就不再詳細(xì)說這兩種方法的用法了,不過他們都是調(diào)用了同樣的一個邏輯startActivity。所以我們分析Activity的啟動流程就從這個方法開始。

 public void startActivity(Intent intent, @Nullable Bundle options) {    if (options != null) {        startActivityForResult(intent, -1, options);
    } else {        startActivityForResult(intent, -1);
    }
}

可以看到盡管startActivity()有多種重載方式,但是最終調(diào)用的還是startActivityForResult,所以我們只需要看startActivityForResult里面的實現(xiàn)邏輯即可。這里需要注意的一點就是調(diào)用了startActivityForResult方法時傳入的一個參數(shù)為

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式