- android面試題總結(jié)加強(qiáng)版 推薦度:
- 相關(guān)推薦
總結(jié)的android面試題
ContentProvider部分相關(guān)如下:
1.說說ContentProvider與Android數(shù)據(jù)存儲的關(guān)系?
答案:作為數(shù)據(jù)的一個(gè)提供者,把數(shù)據(jù)提供給其他應(yīng)用程序。(相當(dāng)于提供數(shù)據(jù)的接口)
2.ContentProvider對象何時(shí)被實(shí)例化?
答案:系統(tǒng)初始化的時(shí)候自動實(shí)例化
3.ContentProvider數(shù)據(jù)模型畫出來?(類似于一張表)
答案: 分三層 一、數(shù)據(jù)存儲 二、提供數(shù)據(jù)中間件contentProvider(增刪改查) 三、 App調(diào)用
4.ContentProvider的機(jī)制是什么?
答案: 此應(yīng)用程序在安裝和卸載的時(shí)候就會分別 regist 和unregist 到providerManager里面供其他應(yīng)用程序的ContentResolver 來訪問
5.ContentProvider試用步驟?
1.定義provider
2.注冊provider 注意進(jìn)程間通信
<provider
android:name=".MyContentProvider"
android:authorities="qyj.contentprovder.MyContentProvider"
android:multiprocess="true">
6.列舉系統(tǒng)提供的幾個(gè)ContentProvider
Brower、Calllog 、ContatsContract、Calender、MediaStore、Settings、userDictionary Activity部分相關(guān)如下:
1.activity作用以及定義?
官方定義:activity是Android應(yīng)用程序提供交互界面的一個(gè)重要組件。也是android最重要的組件之一
官方定義不是特別準(zhǔn)確:
Activity是業(yè)務(wù)類,是承載應(yīng)用程序的界面以及業(yè)務(wù)行為的基礎(chǔ)包括UI、Service ??類似于javaBean
2.口述Activity Window View 三者之間的關(guān)系 (提示壓力泵layoutinflate)
3.事件上傳機(jī)制view最先接到事件 傳給 Window 然后Window分發(fā)出去(keyEvent和 touchEvent)
4.請描述一下Activity的生命周期?(理解記憶那張圖)
5.請描述一下橫豎屏切換時(shí)候的Activity的生命周期?
整個(gè)activity的生命周期(可以去控制不執(zhí)行哪個(gè)方法)
用法:
1.重寫onConfigurationChanged()
2.橫豎屏改變需要
6.什么是TASK?
Task就是多個(gè)activity按照順序組成的一個(gè)業(yè)務(wù)邏輯-----不是官網(wǎng)的定義是自己的總結(jié)
7.描述一下Activity的Tast Stack模型?(詳細(xì)解釋上官網(wǎng)看activity)
diagram_backstack(同一個(gè)進(jìn)程的activity也就是單個(gè)任務(wù)棧):
diagram_multitasking(不同進(jìn)程的activity也就是多個(gè)個(gè)任務(wù)棧):
8.Intent是什么?
包含的內(nèi)容:
compnentName 要啟動的組件(比如activity、Service??)
Action 過濾條件intentfilter里面的字符串
Data 要與intentfilter里面指定的data前綴格式一樣才行
Category 類別
Extras 附加
Flags 標(biāo)記
9.Activity如何保存和恢復(fù)?(一般用在進(jìn)程被殺死的時(shí)候)
當(dāng)進(jìn)程干掉的時(shí)候才有可能去調(diào)onRestoreInstanceState()
10.startActivity機(jī)制?(看源碼-----返回值的應(yīng)用(返回得到date 例子:拍照返回圖片)
11.startActivity為什么要用IBinder(IPC進(jìn)程間通信機(jī)制) 來啟動?
啟動的activity有可能不在同一個(gè)進(jìn)程當(dāng)中
12.intent-filter的用法(啟動activity的時(shí)候過濾)?
名字隨便起
默認(rèn)必須有data數(shù)據(jù)中的Uri前綴
13.Activity配置詳解如下(不全 需要的看官網(wǎng)或自己加)
說明:一般情況下,launch中重新啟動這個(gè)任務(wù)都會清楚底部以上的activity這個(gè)可以保留 Sample(例子):某人從主頁屏幕載入activityP,并從哪里到達(dá)activityQ。用戶接下來按HOME鍵,然后返回到activityQ。因?yàn)槟菚r(shí)他在P的task里操作的地方。然后,如果P將該標(biāo)志設(shè)置為true,當(dāng)用戶按了HOME鍵,該task進(jìn)到后臺去的時(shí)候,其上的所有的activity(Q也屬于這種情況)講被移除。所以以后回到該task時(shí)看到的只有P。
說明:當(dāng)用戶再次載入該task時(shí)(在主頁屏幕上選擇該task),一個(gè)既存的activity實(shí)例是否應(yīng)該被關(guān)閉---------ture表示會被關(guān)閉 false表示不會 。默認(rèn)值為false。
說明:ture允許次activity給其他進(jìn)程調(diào)用 false 不允許其他進(jìn)程調(diào)用次activity 默認(rèn)為false
說明:如果他的值為“:string”形式 根據(jù)需要給他一個(gè)新的進(jìn)程 如果他的值為“string” 修改進(jìn)程別名
說明:是否保存activity的狀態(tài)(也就是上面的值啦)如果為false就保存 為true就不保存。默認(rèn)為false。
說明:橫豎屏切換----“unspecified”不指定切換方式---是默認(rèn)值 “sensor”通過感應(yīng)器來控制切換
說明:activity執(zhí)行的四種模式------根據(jù)任務(wù)棧的相關(guān)只是來看這個(gè)屬性
singleTop:當(dāng)它在棧頂?shù)臅r(shí)候就不會再去實(shí)例化它了(mp3播放界面適合這種) 會調(diào)用的他的onNewIntent()生命周期方法。
singleTask:當(dāng)他在當(dāng)前棧里面已經(jīng)實(shí)例化了的時(shí)候,再次調(diào)用它的時(shí)候它會關(guān)閉(destroy掉它上面的所有activity)然后調(diào)用它的onNewIntent()生命周期方法。------最后它跑到棧頂了。
singleInstance:獨(dú)立成棧(開辟了一個(gè)新棧) 并且有且只有它自己一個(gè)實(shí)例。
退棧原則:先退當(dāng)前棧,當(dāng)前棧里面的activity退完了,再退接下來的棧
一個(gè)A 一個(gè)B 自己寫個(gè)例子練習(xí)一下。
【總結(jié)的android面試題】相關(guān)文章:
android面試題201704-04
android面試題及答案04-04
android面試題整理04-04
android面試題大全04-04
android面試題練習(xí)04-04
android測試面試題04-08
android面試題總結(jié)加強(qiáng)版05-07
android軟件測試面試題04-04
android面試題庫04-04