1. 程式人生 > >Android必考面試題之一——Activity的生命週期以及流程圖

Android必考面試題之一——Activity的生命週期以及流程圖

生命週期包括幾個方法:onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy()......


我們也基本瞭解了Activity生命週期的幾個過程,我們就來說一說這幾個過程。

1.啟動Activity:系統會先呼叫onCreate方法,然後呼叫onStart方法,最後呼叫onResume,Activity進入執行狀態。

2.當前Activity被其他Activity覆蓋其上或被鎖屏:系統會呼叫onPause方法,暫停當前Activity的執行。

3.當前Activity由被覆蓋狀態回到前臺或解鎖屏:系統會呼叫onResume方法,再次進入執行狀態。

4.當前Activity轉到新的Activity介面或按Home鍵回到主屏,自身退居後臺:系統會先呼叫onPause方法,然後呼叫onStop方法,進入停滯狀態。

5.使用者後退回到此Activity:系統會先呼叫onRestart方法,然後呼叫onStart方法,最後呼叫onResume方法,再次進入執行狀態。

6.當前Activity處於被覆蓋狀態或者後臺不可見狀態,即第2步和第4步,系統記憶體不足,殺死當前Activity,而後使用者退回當前Activity:再次呼叫onCreate方法、onStart方法、onResume方法,進入執行狀態。

7.使用者退出當前Activity:系統先呼叫onPause方法,然後呼叫onStop方法,最後呼叫onDestory方法,結束當前Activity。

相關推薦

Android試題之一——Activity生命週期以及流程圖

生命週期包括幾個方法:onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy()...... 我們也基本瞭解了Activity生命週期的幾個過程,我們就來說一說這幾個過程。 1.啟動Activity

Android 開發:(六)Activity生命週期以及函式意義

簡述:   1.在日常應用中Activity是與使用者互動的介面,它提供了一個使用者完成相關操作的視窗。當我們在開發中建立Activity後,通過呼叫setContentView(View)方法來給該Activity指定一個佈局介面,而這個介面就是提供給使用者互動的介面。Androi

企業試題:查找/oldboy目錄下所有7天以前的以log結尾的文件移動到/tmp下。

企業面試題企業必考面試題:查找/oldboy目錄下所有7天以前的以log結尾的文件移動到/tmp下。 要求:請給出至少三種實現方法,有能力的朋友試試看! 方法一、 [root@centos6 oldboy]# mv $(find . -name "*.log" -size +1M -at

【轉】Java Collection(集合)試題

Arraylist 與 LinkedList 異同 1. 是否保證執行緒安全: ArrayList 和 LinkedList 都是不同步的,也就是不保證執行緒安全; 2. 底層資料結構: Arraylist 底層使用的是Object陣列;LinkedList 底層使用的是雙

Android面試(2):四大元件之Activity---生命週期

  全文來自剛哥的《Android藝術探究》 我們這裡分成兩種情況詳細介紹: 一、正常情況下的生命週期:     所謂正常情況下的生命週期,是指在有使用者參與的情況下,Activity所經過的生命週期的改變。 二、異常情況下的生

Android P AMS與ActivityThread處理Activity生命週期--ClientTransactionHandler

在Android P中,ActivityThread extends ClientTransactionHandler,而ClientTransactionHandler封裝了handlexxxActivity的方法。 而AMS控制Activity的生命週期,通過ApplicationThrea

Android中Fragment、DialogFragment與Activity生命週期釋義

package com.youche.cango.dialog; import android.app.DialogFragment; import android.content.Context;

深入探索Activity生命週期以及啟動過程

1.各個生命週期的作用 1.onCreate() 可以進行初始化操作,初始化元件以及佈局資源。此時Activity處於不可見狀態。 2.onStart() 表示Activity在啟動,前臺還沒有顯示。 3.onResume() 表示Activity已經在螢幕

Activity生命週期以及launchMode對生命週期的影響

啟動Activity1,此時會建立一個Task,將Activity1新增到Task中。此時如果再啟動Activity1,由於Task頂部的Activity例項就是Activity1的例項,那麼不會重新建立Activity1的例項,而是會複用Task頂部的Activty1。如果此時啟動Activity2,由於T

Fragment和Activity生命週期以及橫豎屏切換對生命週期的影響

生命週期變化 : 切換到該Fragment 05-21 14:26:35.095: D/FragmentDemo(7649): onAttach 05-21 14:26:35.095: D/FragmentDemo(7649): onCreate 05-21 14:26:35.095: D/Frag

Android之D試題②程序保活的一般套路(1畫素Activity/賬號同步/Jobscheduler/系統服務捆綁)

       讀到這裡,你或許有一個疑問,假設現在記憶體不足,空程序都被殺光了,現在要殺後臺程序,但是手機中後臺程序很多,難道要一次性全部都清理掉?當然不是的,程序是有它的優先順序的,這個優先順序通過程序的adj值來反映,它是linux核心分配給每個系統程序的一個值,代表程序的優先順序,程序回收機制就是根據這

Android之A試題Activity啟動過程簡要介紹和學習計劃

        在Android系統中,Activity和Service是應用程式的核心元件,它們以鬆藕合的方式組合在一起構成了一個完整的應用程式,這得益於應用程式框架層提供了一套完整的機制來協助應用程式啟動這些Activity和Service,以及提供Binder機制幫助它

Android拿高薪試題

外掛化、熱修復 、熱更新的理解 外掛化 – apk 分為宿主和外掛部分,外掛在需要的時候才載入進來 熱修復 – 更新的類或者外掛粒度較小的時候,我們會稱之為熱修復,一般用於修復bug 熱更新 – 2016 Google 的 Android Studio 推出了Instant Run 功能 同時提出了3

Java常試題(三)

請求 其中 默認 查找 重新 技術分享 block 知識 logs     序言        說說今天遇到的一件小事吧,在遇到問題,查找答案時,看到很多人的博客裏面都有提到關鍵字眼,可讓人覺得可恨的是,大多數人寫的博文中,基本上都是照著書上的語言發表的,看了跟沒看一樣,沒

Java常試題(一)

div 並且 功能 不出 共享 情況 字符型 對象 java字節碼       序言         我是一只亂飛亂撞的菜鳥,寫的文章目前是以記錄自己學習,和方便以後查看,期待日後不久能通過自己的努力,獲得一點小小的成功,然後寫出我的學習經驗總結性文章來。         

Java常試題

class 出了 維護 們的 封裝 cep jdb destroy 輸出 Java集合類框架的基本接口有哪些? 參考答案 集合類接口指定了一組叫做元素的對象。集合類接口的每一種具體的實現類都可以選擇以它自己的方式對元素進行保存和排序。有的集合類允許重復的鍵,有些不允許。

第3章 Android基礎相關試題

sch str adapt div 再次 點擊 相關 發現 amp 1、Activity問題講解   a) Activity的生命周期     1.Activity的4種狀態       running / paused / stopped / kil

Linux試題,雲計算試題及答案

雲計算×××教育總結了很多雲計算面試題及答案,一起來看一下吧! 1.生產場景如何對linux系統進行合理規劃分區? 分區的根本原則是簡單、易用、方便批量管理。根據服務器角色定位建議如下: ①單機服務器:如8G內存,300G硬盤 分區: /boot 100-200M,swap 16G,內存大小8G*2,/ 80

計算機網絡常試題總結

計算 art msl csdn 什麽 http協議 net 輸入 控制 這裏先將搜集到的題目列出來,日後一一精細得寫完。 https://blog.csdn.net/u013408431/article/details/62442670 https://blog.csdn.

深圳市奔凱安全技術股份有限公司試題之一:關於資料庫查詢,根據年份查詢每個季度的銷售額

題目:根據年份查詢每個季度的銷售額,表的結構大概如下:(year是年,month是季度,sale是銷售量,表 名 是 sales) select * from sales; 他要求寫sql語句,顯示如下圖:(一季度就是month=1,二季度就是month=2......)