0,Android啟動流程
1,F(xiàn)ragment的add,replace的區(qū)別,如何解決重影
2,F(xiàn)rgament的remove,detach的區(qū)別
3,Android的view的深度,編寫代碼
4,Android的優(yōu)化,view嵌套的比較多,如何優(yōu)化?
- ViewHolder,convertView
- 分步加載,一次加載10個
- 圖片使用緩存(Picasso)
5,Service 有哪兩種?有什么區(qū)別?

使用startService()方法啟用服務(wù),調(diào)用者與服務(wù)之間沒有關(guān)連,即使調(diào)用者退出了,服 務(wù)仍然運(yùn)行。使用bindService()方法啟用服務(wù),調(diào)用者與服務(wù)綁定在了一起,調(diào)用者一旦退出,服務(wù)也就終止,大有“不求同時生,必須同時死”的 特點(diǎn)。
- Service不是一個單獨(dú)的進(jìn)程 ,它和應(yīng)用程序在同一個進(jìn)程中
- Service不是一個線程,所以我們應(yīng)該避免在Service里面進(jìn)行耗時的操作
有一點(diǎn)需要強(qiáng)調(diào),如果有耗時操作在Service里,就必須開啟一個單獨(dú)的線程來處理,這點(diǎn)一定要銘記在心。
6,Service和IntentService的區(qū)別
IntentService:異步處理服務(wù),新開一個線程:handlerThread在線程中發(fā)消息,然后接受處理完成后,會清理線程,并且關(guān)掉服務(wù)。
總結(jié)IntentService的特征有:
(1)會創(chuàng)建獨(dú)立的worker線程來處理所有的Intent請求;
(2)會創(chuàng)建獨(dú)立的worker線程來處理onHandleIntent()方法實(shí)現(xiàn)的代碼,無需處理多線程問題;
(3)所有請求處理完成后,IntentService會自動停止,無需調(diào)用stopSelf()方法停止Service;
7,怎么理解Android里面的Task
Task就相當(dāng)于應(yīng)用(application)的概念。在開發(fā)人員眼中,開發(fā)一個Android程序,是做一個個獨(dú)門獨(dú)戶的組件,但對于一般用戶而言,它們感知到的,只是一個運(yùn)行起來的整體應(yīng)用,這個整體背后,就是Task。
Task,簡單的說,就是一組以棧的模式聚集在一起的Activity組件集合。它們有潛在的前后驅(qū)關(guān)聯(lián),新加入的Activity組件,位于棧頂,并僅有在棧頂?shù)腁ctivity,才會有機(jī)會與用戶進(jìn)行交互。而當(dāng)棧頂?shù)腁ctivity完成使命退出的時候,Task會將其退棧,并讓下一個將跑到棧頂?shù)腁ctivity來于用戶面對面,直至棧中再無更多Activity,Task結(jié)束。