国产精品久久久久影院老司_亚洲福利在线视频_中国女警察一级毛片视频_亚洲一区在线免费视频_久久亚洲第一_狠狠干五月

蜜蜂職場(chǎng)文庫(kù) > 面試技巧 >

android面試題目

時(shí)間: 小龍 面試技巧

  android面試題目你有提前了解了嗎?對(duì)于面試者來(lái)說(shuō),提前對(duì)面試題目很有必要,以下是小編幫你們整理的android面試題目,一起來(lái)學(xué)習(xí)啦。

  android面試題目篇一

  1、View如何進(jìn)行刷新?

  參考答案:

  在一個(gè)開(kāi)啟的線程中調(diào)用handler對(duì)象的sendMessage方法發(fā)送信息,在UI線程中調(diào)用handler對(duì)象的回調(diào)方法handleMessage進(jìn)行處理,在回調(diào)方法中執(zhí)行invalidate或者postInvalidate.

  2、ANR是什么?哪些情況下會(huì)發(fā)生?開(kāi)發(fā)時(shí)如何避免ANR?

  參考答案:

  ANR(Application Not Responding):應(yīng)用程序無(wú)應(yīng)答。默認(rèn)情況下,在android中Activity的最長(zhǎng)阻塞時(shí)間是5秒,BroadcastReceiver的最長(zhǎng)執(zhí)行時(shí)間則是10秒。為了避免出現(xiàn)ANR,可以在做比較耗時(shí)操作時(shí),盡量使用子線程或Service。

  3、請(qǐng)描述SAX、DOM、PULL解析xml的原理,以及各自優(yōu)缺點(diǎn)。

  參考答案:

  這里首先明白什么是SAX是一個(gè)用于處理XML事件驅(qū)動(dòng)的“推”模型,優(yōu)點(diǎn)是一種解析速度快并且占用內(nèi)存少的xml解析器,它需要哪些數(shù)據(jù)再加載和解析哪些內(nèi)容。缺點(diǎn)是它不會(huì)記錄標(biāo)簽的關(guān)系,而要讓你的應(yīng)用程序自己處理,這樣就增加了你程序的負(fù)擔(dān)。

  DOM是一種文檔對(duì)象模型,DOM可以以一種獨(dú)立于平臺(tái)和語(yǔ)言的方式訪問(wèn)和修改一個(gè)文檔的內(nèi)容和結(jié)構(gòu)。Dom技術(shù)使得用戶頁(yè)面可以動(dòng)態(tài)地變化,如 可以動(dòng)態(tài)地顯示或隱藏一個(gè)元素,改變它們的屬性,增加一個(gè)元素等,Dom技術(shù)使得頁(yè)面的交互性大大地增強(qiáng)。缺點(diǎn)是DOM解析XML文件時(shí),會(huì)將XML文件 的所有內(nèi)容以文檔樹(shù)方式存放在內(nèi)存中。

  Pull解析和Sax解析很相似,Pull解析和Sax解析不一樣的地方是pull讀取xml文件后觸發(fā)相應(yīng)的事件調(diào)用方法返回的是數(shù)字還有pull可以在程序中控制想解析到哪里就可以停止解析

  4、請(qǐng)解釋什么是AIDL?

  參考答案: AIDL:Android Interface Definition Language,即Android接口描述語(yǔ)言。 Android系統(tǒng)中的進(jìn)程之間不能共享內(nèi)存,因此,需要提供一些機(jī)制在不同進(jìn)程之間進(jìn)行數(shù)據(jù)通信。

  為了使其他的應(yīng)用程序也可以訪問(wèn)本應(yīng)用程序提供的服務(wù),Android系統(tǒng)采用了遠(yuǎn)程過(guò)程調(diào)用(Remote Procedure Call,RPC)方式來(lái)實(shí)現(xiàn)。與很多其他的基于RPC的解決方案一樣,Android使用一種接口定義語(yǔ)言(Interface Definition Language,IDL)來(lái)公開(kāi)服務(wù)的接口。我們知道4個(gè)Android應(yīng)用程序組件中的3個(gè)(Activity、Broadcast和Content Provider)都可以進(jìn)行跨進(jìn)程訪問(wèn),另外一個(gè)Android應(yīng)用程序組件Service同樣可以。因此,可以將這種可以跨進(jìn)程訪問(wèn)的服務(wù)稱為AIDL(Android Interface Definition Language)服務(wù)。

  5、DIP、DPI分別是什么?

  參考答案:

  dip(device independent pixels)設(shè)備獨(dú)立像素, 與設(shè)備屏幕有關(guān)。dpi:屏幕像素密度。 android最早是沒(méi)有考慮到這么多屏幕分辨率的。最早的機(jī)器是g1,他的分辨率是480*320。但是,由于android是開(kāi)放的平臺(tái),各種各樣分辨率的設(shè)備都可以運(yùn)行。為了兼容這些平臺(tái),android從1.6開(kāi)始,加入了設(shè)備獨(dú)立像素,dip或者dp。標(biāo)準(zhǔn)屏幕480*320上,px與dip是1比1的。分辨率高的,比如800*480,就要按比例兌換成480*320。

  開(kāi)發(fā)者在開(kāi)發(fā)的時(shí)候,ui設(shè)計(jì)時(shí)最好用dp,系統(tǒng)會(huì)自動(dòng)按比例計(jì)算為px,從而適配視圖。 dpi是屏幕像素密度。就是1英寸上像素點(diǎn)的個(gè)數(shù)。對(duì)于屏幕來(lái)說(shuō),dpi越大,屏幕的精細(xì)度越高,屏幕看起來(lái)就越清楚。比如iphone4的視網(wǎng)膜級(jí)的屏幕肯定比iphone 3gs的屏幕像素密度高的多。 對(duì)于開(kāi)發(fā)者來(lái)說(shuō),這個(gè)不是很重要。

  android面試題目篇二

  1、請(qǐng)介紹下Android中常用的五種布局。

  參考答案:

  答:在Android中,共有五種布局方式,分別是:FrameLayout(框架布局),LinearLayout (線性布局),AbsoluteLayout(絕對(duì)布局),RelativeLayout(相對(duì)布局),TableLayout(表格布局)。

  (1)FrameLayout 框架布局,放入其中的所有元素都被放置在最左上的區(qū)域,而且無(wú)法為這些元素指定一個(gè)確切的位置,下一個(gè)子元素會(huì)重疊覆蓋上一個(gè)子元素,適合瀏覽單張圖片。

  (2)LinearLayout 線性布局,是應(yīng)用程序中最常用的布局方式,主要提供控件水平或者垂直排列的模型,每個(gè)子組件都是以垂直或水平的方式來(lái)定位(默認(rèn)是垂直)。

  (3)AbsoluteLayout 絕對(duì)定位布局,采用坐標(biāo)軸的方式定位組件,左上角是(0,0)點(diǎn),往右x軸遞增,往下Y軸遞增,組件定位屬性為android:layout_x 和 android:layout_y來(lái)確定坐標(biāo)。

  (4)RelativeLayout 相對(duì)布局,根據(jù)另外一個(gè)組件或是頂層父組件來(lái)確定下一個(gè)組件的位置。和CSS里面的類似。

  (5)TableLayout 表格布局,類似Html里的Table.使用TableRow來(lái)布局,其中TableRow代表一行,TableRow的每一個(gè)視圖組件代表一個(gè)單元格。

  2、請(qǐng)介紹下Android的數(shù)據(jù)存儲(chǔ)方式。

  參考答案:

  答:Android提供了5種方式存儲(chǔ)數(shù)據(jù):

  (1)使用SharedPreferences存儲(chǔ)數(shù)據(jù);它是Android提供的用來(lái)存儲(chǔ)一些簡(jiǎn)單配置信息的一種機(jī)制,采用了XML格式將數(shù)據(jù)存儲(chǔ)到設(shè)備中。只能在同一個(gè)包內(nèi)使用,不能在不同的包之間使用。

  (2)文件存儲(chǔ)數(shù)據(jù);文件存儲(chǔ)方式是一種較常用的方法,在Android中讀取/寫入文件的方法,與Java中實(shí)現(xiàn)I/O的程序是完全一樣的,提供了openFileInput()和openFileOutput()方法來(lái)讀取設(shè)備上的文件。

  (3)SQLite數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù);SQLite是Android所帶的一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù),它支持SQL語(yǔ)句,它是一個(gè)輕量級(jí)的嵌入式數(shù)據(jù)庫(kù)。

  (4)使用ContentProvider存儲(chǔ)數(shù)據(jù);主要用于應(yīng)用程序之間進(jìn)行數(shù)據(jù)交換,從而能夠讓其他的應(yīng)用保存或讀取此Content Provider的各種數(shù)據(jù)類型。

  (5)網(wǎng)絡(luò)存儲(chǔ)數(shù)據(jù);通過(guò)網(wǎng)絡(luò)上提供給我們的存儲(chǔ)空間來(lái)上傳(存儲(chǔ))和下載(獲取)我們存儲(chǔ)在網(wǎng)絡(luò)空間中的數(shù)據(jù)信息。!

  3、請(qǐng)說(shuō)明隱式、顯式Intent的區(qū)別?

  參考答案:

  顯式Intent直接用組件的名稱定義目標(biāo)組件,這種方式很直接。但是由于開(kāi)發(fā)人員往往并不清楚別的應(yīng)用程序的組件名稱,因此,顯式Intent更多用于在應(yīng)用程序內(nèi)部傳遞消息。比如在某應(yīng)用程序內(nèi),一個(gè)Activity啟動(dòng)一個(gè)Service。

  隱式Intent恰恰相反,它不會(huì)用組件名稱定義需要激活的目標(biāo)組件,它更廣泛地用于在不同應(yīng)用程序之間傳遞消息。

  在顯式Intent消息中,決定目標(biāo)組件的唯一要素就是組件名稱,因此,如果你的Intent中已經(jīng)明確定義了目標(biāo)組件的名稱,那么你就完全不用再定義其他Intent內(nèi)容。

  而對(duì)于隱式Intent則不同,由于沒(méi)有明確的目標(biāo)組件名稱,所以必須由Android系統(tǒng)幫助應(yīng)用程序?qū)ふ遗cIntent請(qǐng)求意圖最匹配的組件。

  android面試題目篇三

  1、請(qǐng)說(shuō)明getWritableDatabase()和getReadableDatabase()的區(qū)別?

  參考答案:

  getReadableDatabase()并不是以只讀方式打開(kāi)數(shù)據(jù)庫(kù),而是先執(zhí)getWritableDatabase(),失敗的情況下才調(diào)用。getWritableDatabase()和getReadableDatabase()方法都可以獲取一個(gè)用于操作數(shù)據(jù)庫(kù)的SQLiteDatabase實(shí)例。但getWritableDatabase() 方法以讀寫方式打開(kāi)數(shù)據(jù)庫(kù),一旦數(shù)據(jù)庫(kù)的磁盤空間滿了,數(shù)據(jù)庫(kù)就只能讀而不能寫,倘若使用getWritableDatabase()打開(kāi)數(shù)據(jù)庫(kù)就會(huì)出錯(cuò)。getReadableDatabase()方法先以讀寫方式打開(kāi)數(shù)據(jù)庫(kù),如果數(shù)據(jù)庫(kù)的磁盤空間滿了,就會(huì)打開(kāi)失敗,當(dāng)打開(kāi)失敗后會(huì)繼續(xù)嘗試以只讀方式打開(kāi)數(shù)據(jù)庫(kù)。

  2、請(qǐng)描述下Activity的生命周期。

  參考答案:

  activity的生命周期方法有:onCreate()、onStart()、onReStart()、onResume()、onPause()、onStop()、onDestory()。

  activity主要生命周期的方法說(shuō)明:

  onCreate(Bundle savedInstanceState):創(chuàng)建activity時(shí)調(diào)用。設(shè)置在該方法中,還以Bundle的形式提供對(duì)以前儲(chǔ)存的任何狀態(tài)的訪問(wèn)!

  onStart():activity變?yōu)樵谄聊簧蠈?duì)用戶可見(jiàn)時(shí)調(diào)用。

  onResume():activity開(kāi)始與用戶交互時(shí)調(diào)用(無(wú)論是啟動(dòng)還是重新啟動(dòng)一個(gè)活動(dòng),該方法總是被調(diào)用的)。

  onPause():activity被暫停或收回cpu和其他資源時(shí)調(diào)用,該方法用于保存活動(dòng)狀態(tài)的,也是保護(hù)現(xiàn)場(chǎng),壓棧吧!

  onStop():activity被停止并轉(zhuǎn)為不可見(jiàn)階段及后續(xù)的生命周期事件時(shí)調(diào)用。

  onRestart():重新啟動(dòng)activity時(shí)調(diào)用。該活動(dòng)仍在棧中,而不是啟動(dòng)新的活動(dòng)。

  onDestroy():activity被完全從系統(tǒng)內(nèi)存中移除時(shí)調(diào)用,該方法被調(diào)用

  3、如何將一個(gè)Activity設(shè)置成窗口的樣式。

  參考答案:

  只需要設(shè)置 一下Activity的主題就可以了,在AndroidManifest.xml 中定義 Activity的地方加上android :theme="@android:style/Theme.Dialog"這就使你的應(yīng)用程序變成對(duì)話框的形式彈出來(lái)了。或者android:theme="@android:style/Theme.Translucent"。就變成半透明的。

  4、Android中Activity, Intent, Content Provider, Service各有什么區(qū)別?

  參考答案:

  答:Activity:活動(dòng),是最基本的android應(yīng)用程序組件。一個(gè)活動(dòng)就是一個(gè)單獨(dú)的屏幕,每一個(gè)活動(dòng)都被實(shí)現(xiàn)為一個(gè)獨(dú)立的類,并且從活動(dòng)基類繼承而來(lái)。

  Intent:意圖,描述應(yīng)用想干什么。最重要的部分是動(dòng)作和動(dòng)作對(duì)應(yīng)的數(shù)據(jù)。

  Content Provider:內(nèi)容提供器,android應(yīng)用程序能夠?qū)⑺鼈兊臄?shù)據(jù)保存到文件、SQLite數(shù)據(jù)庫(kù)中,甚至是任何有效的設(shè)備中。當(dāng)你想將你的應(yīng)用數(shù)據(jù)和其他應(yīng)用共享時(shí),內(nèi)容提供器就可以發(fā)揮作用了。

  Service:服務(wù),具有一段較長(zhǎng)生命周期且沒(méi)有用戶界面的程序。

  5、你如何評(píng)價(jià)Android系統(tǒng)優(yōu)缺點(diǎn)?

  參考答案:

  優(yōu)勢(shì):

  一、開(kāi)放性

  二、豐富的硬件選擇

  三、無(wú)縫結(jié)合的Google應(yīng)用支持

  缺點(diǎn):

  一、安全和隱私

  二,開(kāi)發(fā)商自定義,不夠統(tǒng)一

  三、同類機(jī)型用戶減少

  
看了“android面試題目”的人還看過(guò):

1.

2.

3.

4.

5.

50349 主站蜘蛛池模板: 91成人免费 | 亚洲天堂在线电影 | 欧美一级二级毛片视频 | 久久国产精品二国产精品中国洋人 | 亚洲黑人在线观看 | 国产高潮国产高潮久久久91 | 黄色毛片免费看 | 九九热在线视频观看 | 91香焦视频 | 欧美中文字幕在线视频 | 亚洲性生活免费视频 | 一级网站 | 在线播放中文 | 日韩av成人 | 国产亚洲精品一区二区三区 | 国产成人综合在线观看 | 久久久久一本一区二区青青蜜月 | 黄色大片网站在线观看 | 精品一区二区三区免费毛片 | 久章草影院 | 国产精品自拍99 | 日韩视频中文 | 日韩毛片免费观看 | 99在线精品视频免费观看20 | 亚洲男人一区 | 亚洲午夜在线观看 | 国产精品九九久久一区hh | 午夜视频色 | 欧美在线观看视频网站 | 国产亚洲高清在线精品不卡 | 精品国产久 | 蜜桃网在线观看 | 亚洲二区不卡 | 羞羞的动漫在线观看 | 91一区二区三区久久久久国产乱 | 久久免费视频3 | www.91视频com| 久久久无码精品亚洲日韩按摩 | 香蕉国产9| 国产亚洲精久久久久久蜜臀 | 国产做爰全免费的视频黑人 |