六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學習啦 > 創(chuàng)業(yè)指南 > 職場 > 面試題 > 安卓面試題及參考答案

安卓面試題及參考答案

時間: 如英753 分享

安卓面試題及參考答案

  面試題是安卓面試的時候經(jīng)常出現(xiàn)的形式,是安卓面試過程中必不可少的組成部分。下面是學習啦小編為大家?guī)淼陌沧棵嬖囶}及答案,相信對你會有幫助的。

  安卓面試題及答案(一)

  1.簡要解釋一下activity、 intent 、intent filter、service、Broadcase、BroadcaseReceiver

  答案:一個activity呈現(xiàn)了一個用戶可以操作的可視化用戶界面

  一個service不包含可見的用戶界面,而是在后臺無限地運行

  可以連接到一個正在運行的服務(wù)中,連接后,可以通過服務(wù)中暴露出來的借口與其進行通信

  一個broadcast receiver是一個接收廣播消息并作出回應(yīng)的component,broadcastreceiver沒有界面

  intent:content provider在接收到ContentResolver的請求時被激活。

  activity, service和broadcast receiver是被稱為intents的異步消息激活的。

  一個intent是一個Intent對象,它保存了消息的內(nèi)容。對于activity和service來說,它指定了請求的操作名稱和待操作數(shù)據(jù)的URI

  Intent對象可以顯式的指定一個目標component。如果這樣的話,android會找到這個component(基于manifest文件中的聲明)并激活它。但如果一個目標不是顯式指定的,android必須找到響應(yīng)intent的最佳component。

  它是通過將Intent對象和目標的intent filter相比較來完成這一工作的。一個component的intent filter告訴android該component能處理的intent。intent filter也是在manifest文件中聲明的。

  2.IntentService有何優(yōu)點?

  答案:IntentService 的好處

  * Acitivity的進程,當處理Intent的時候,會產(chǎn)生一個對應(yīng)的Service

  * Android的進程處理器現(xiàn)在會盡可能的不kill掉你

  * 非常容易使用

  3.橫豎屏切換時候activity的生命周期?

  答案:1、不設(shè)置Activity的android:configChanges時,切屏會重新調(diào)用各個生命周期,切橫屏時會執(zhí)行一次,切豎屏時會執(zhí)行兩次

  2、設(shè)置Activity的android:configChanges=”orientation”時,切屏還是會重新調(diào)用各個生命周期,切橫、豎屏時只會執(zhí)行一次

  3、設(shè)置Activity的android:configChanges=”orientation|keyboardHidden”時,切屏不會重新調(diào)用各個生命周期,只會執(zhí)行onConfigurationChanged方法

  4.如何將SQLite數(shù)據(jù)庫(dictionary.db文件)與apk文件一起發(fā)布?

  答案:可以將dictionary.db文件復(fù)制到Eclipse Android工程中的res aw目錄中。所有在res aw目錄中的文件不會被壓縮,這樣可以直接提取該目錄中的文件??梢詫ictionary.db文件復(fù)制到res aw目錄中

  5.如何將打開res aw目錄中的數(shù)據(jù)庫文件?

  答案:在Android中不能直接打開res aw目錄中的數(shù)據(jù)庫文件,而需要在程序第一次啟動時將該文件復(fù)制到手機內(nèi)存或SD卡的某個目錄中,然后再打開該數(shù)據(jù)庫文件。復(fù)制的基本方法是使用getResources().openRawResource方法獲得res aw目錄中資源的 InputStream對象,然后將該InputStream對象中的數(shù)據(jù)寫入其他的目錄中相應(yīng)文件中。在Android SDK中可以使用SQLiteDatabase.openOrCreateDatabase方法來打開任意目錄中的SQLite數(shù)據(jù)庫文件。

  6.Android引入廣播機制的用意?

  答案:a:從MVC的角度考慮(應(yīng)用程序內(nèi)),其實回答這個問題的時候還可以這樣問,android為什么要有那4大組件,現(xiàn)在的移動開發(fā)模型基本上也是照搬的web那一套MVC架構(gòu),只不過是改了點嫁妝而已。android的四大組件本質(zhì)上就是為了實現(xiàn)移動或者說嵌入式設(shè)備上的MVC架構(gòu),它們之間有時候是一種相互依存的關(guān)系,有時候又是一種補充關(guān)系,引入廣播機制可以方便幾大組件的信息和數(shù)據(jù)交互。

  b:程序間互通消息(例如在自己的應(yīng)用程序內(nèi)監(jiān)聽系統(tǒng)來電)

  c:效率上(參考UDP的廣播協(xié)議在局域網(wǎng)的方便性)

  d:設(shè)計模式上(反轉(zhuǎn)控制的一種應(yīng)用,類似監(jiān)聽者模式)

  7.Android dvm的進程和Linux的進程, 應(yīng)用程序的進程是否為同一個概念

  答案:DVM指dalivk的虛擬機。每一個Android應(yīng)用程序都在它自己的進程中運行,都擁有一個獨立的Dalvik虛擬機實例。而每一個DVM都是在Linux 中的一個進程,所以說可以認為是同一個概念。

  8.sim卡的EF 文件有何作用

  答案:sim卡的文件系統(tǒng)有自己規(guī)范,主要是為了和手機通訊,sim本 身可以有自己的操作系統(tǒng),EF就是作存儲并和手機通訊用的

  9.嵌入式操作系統(tǒng)內(nèi)存管理有哪幾種,各有何特性

  答案:頁式,段式,段頁,用到了MMU,虛擬空間等技術(shù)

  10.什么是嵌入式實時操作系統(tǒng), Android 操作系統(tǒng)屬于實時操作系統(tǒng)嗎?

  答案:嵌入式實時操作系統(tǒng)是指當外界事件或數(shù)據(jù)產(chǎn)生時,能夠接受并以足夠快的速度予以處理,其處理的結(jié)果又能在規(guī)定的時間之內(nèi)來控制生產(chǎn)過程或?qū)μ幚硐到y(tǒng)作出快速響應(yīng),并控制所有實時任務(wù)協(xié)調(diào)一致運行的嵌入式操作系統(tǒng)。主要用于工業(yè)控制、 軍事設(shè)備、 航空航天等領(lǐng)域?qū)ο到y(tǒng)的響應(yīng)時間有苛刻的要求,這就需要使用實時系統(tǒng)。又可分為軟實時和硬實時兩種,而android是基于linux內(nèi)核的,因此屬于軟實時。

  11.一條最長的短信息約占多少byte?

  答案:中文70(包括標點),英文160,160個字節(jié)。

  12.android中的動畫有哪幾類,它們的特點和區(qū)別是什么?

  答案:兩種,一種是Tween動畫、還有一種是Frame動畫。Tween動畫,這種實現(xiàn)方式可以使視圖組件移動、放大、縮小以及產(chǎn)生透明度的變化;另一種Frame動畫,傳統(tǒng)的動畫方法,通過順序的播放排列好的圖片來實現(xiàn),類似電影。

  13.handler機制的原理

  答案:andriod提供了Handler 和 Looper 來滿足線程間的通信。Handler先進先出原則。Looper類用來管理特定線程內(nèi)對象之間的消息交換(MessageExchange)。

  1)Looper: 一個線程可以產(chǎn)生一個Looper對象,由它來管理此線程里的MessageQueue(消息隊列)。

  2)Handler: 你可以構(gòu)造Handler對象來與Looper溝通,以便push新消息到MessageQueue里;或者接收Looper從Message Queue取出)所送來的消息。

  3) Message Queue(消息隊列):用來存放線程放入的消息。

  4)線程:UIthread 通常就是main thread,而Android啟動程序時會替它建立一個MessageQueue。

  14.說說mvc模式的原理,它在android中的運用

  答案:MVC(Model_view_contraller)”模型_視圖_控制器”。 MVC應(yīng)用程序總是由這三個部分組成。Event(事件)導致Controller改變Model或View,或者同時改變兩者。只要Controller改變了Models的數(shù)據(jù)或者屬性,所有依賴的View都會自動更新。

  15.DDMS和TraceView的區(qū)別?

  答案:DDMS是一個程序執(zhí)行查看器,在里面可以看見線程和堆棧等信息,TraceView是程序性能分析器。

  16.java中如何引用本地語言

  答案:可以用JNI(java nativeinterface java 本地接口)接口。

  17.談?wù)凙ndroid的IPC(進程間通信)機制

  答案:IPC是內(nèi)部進程通信的簡稱, 是共享”命名管道”的資源。Android中的IPC機制是為了讓Activity和Service之間可以隨時的進行交互,故在Android中該機制,只適用于Activity和Service之間的通信,類似于遠程方法調(diào)用,類似于C/S模式的訪問。通過定義AIDL接口文件來定義IPC接口。Servier端實現(xiàn)IPC接口,Client端調(diào)用IPC接口本地代理。

  18.NDK是什么

  答案:NDK是一些列工具的集合,NDK提供了一系列的工具,幫助開發(fā)者迅速的開發(fā)C/C++的動態(tài)庫,并能自動將so和java 應(yīng)用打成apk包。

  NDK集成了交叉編譯器,并提供了相應(yīng)的mk文件和隔離cpu、平臺等的差異,開發(fā)人員只需簡單的修改mk文件就可以創(chuàng)建出so

>>>點擊下頁還有更多安卓面試題及參考答案

1083145