14.說明onSaveInstanceState()和onRestoreInstanceState()在什么時(shí)候調(diào)用?
由系統(tǒng)銷毀一個(gè)Activity時(shí)調(diào)用onSaveInstanceState()方法
onRestoreInstanceState()被調(diào)用的前提是,activity A“確實(shí)”被系統(tǒng)銷毀了,而如果僅僅是停留在有這種可能性的情況下侣夷,則該方法不會被調(diào)用
15.android的Service的生命周期?哪個(gè)方法可以被多次調(diào)用仑乌?
不同的啟動(dòng)方式有不同的生命周期:
- start Service:onCreate(),onStartCommand(),onDestory()
- bind Service:onCreate(),onBind(),onUnbind(),onDestory()
多次啟動(dòng)一個(gè)已有的生命周期會調(diào)用onStartCommend()和onDestory()
16.android的broadcast生命周期
Broadcast的生命周期只有一個(gè)回調(diào)方法:void onReceive(Context curContext,Intent broadcastMsg)百拓。當(dāng)broadcast消息到達(dá)接收者時(shí)晰甚,Android會調(diào)用他的onReceive()方法,并且傳遞包含這個(gè)信息的intent對象厕九。broadcast接收者在執(zhí)行這個(gè)方法時(shí)粪牲,被認(rèn)為是活動(dòng)的。當(dāng)onReceive()方法返回時(shí)止剖,它停止的活動(dòng)狀態(tài)腺阳。
17.什么情況下會導(dǎo)致Force Close落君?如何避免亭引?能否捕獲其導(dǎo)致的異常?
程序代碼出現(xiàn)異常了 一般像空指針等纹冤。 可以用logcat捕獲異常。就是要寫代碼時(shí)要嚴(yán)謹(jǐn)萌京,思維縝密他托。
18.3&5的值
integer是32位
3:0011
5:0101
按位與:只有全為0的時(shí)候才為0.全為1的時(shí)候才為1
0001結(jié)果為1
19.描述IntetService的優(yōu)點(diǎn):
- 創(chuàng)建了一個(gè)單獨(dú)的工作線程來處理所有的intent請求(可以處理耗時(shí)操作)
- 有一個(gè)onHandlerIntent()方法處理工作線程當(dāng)中的任務(wù)云石,開發(fā)者無需處理多線程問題求妹。
- 處理完所有的intent請求后制恍,IntentService會自動(dòng)停止神凑,無需調(diào)用stopSelf()將其停止
- 不需要重寫onBind()方法溉委,因?yàn)槟J(rèn)實(shí)現(xiàn)了,返回為null
- 也默認(rèn)實(shí)現(xiàn)了onStartCommend()方法,會將請求的Intent添加到隊(duì)列中去型宝。