android筆試題及其參考答案【匯總】

思而思學(xué)網(wǎng)

android筆試題及其參考答案

在android中,請(qǐng)簡(jiǎn)述jni的調(diào)用過(guò)程。

1)安裝和下載Cygwin,下載 Android NDK

2)在ndk項(xiàng)目中JNI接口的設(shè)計(jì)

3)使用C/C++實(shí)現(xiàn)本地方法

4)JNI生成動(dòng)態(tài)鏈接庫(kù).so文件

5)將動(dòng)態(tài)鏈接庫(kù)復(fù)制到j(luò)ava工程,在java工程中調(diào)用,運(yùn)行java工程即可

簡(jiǎn)述Android應(yīng)用程序結(jié)構(gòu)是哪些?

Android應(yīng)用程序結(jié)構(gòu)是:

Linux Kernel(Linux內(nèi)核)、Libraries(系統(tǒng)運(yùn)行庫(kù)或者是c/c++核心庫(kù))、Application

Framework(開發(fā)框架包)、Applications (核心應(yīng)用程序)

如果后臺(tái)的Activity由于某原因被系統(tǒng)回收了,如何在被系統(tǒng)回收之前保存當(dāng)前狀態(tài)?

onSaveInstanceState()

當(dāng)你的程序中某一個(gè)Activity A在運(yùn)行時(shí),主動(dòng)或被動(dòng)地運(yùn)行另一個(gè)新的Activity B,這個(gè)時(shí)候A會(huì)執(zhí)行onSaveInstanceState()。B完成以后又會(huì)來(lái)找A,這個(gè)時(shí)候就有兩種情況:一是A被回收,二是A沒有被回收,被回收的A就要重新調(diào)用onCreate()方法,不同于直接啟動(dòng)的是這回onCreate()里是帶上了參數(shù)savedInstanceState;而沒被收回的就直接執(zhí)行onResume(),跳過(guò)onCreate()了。

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

在AndroidManifest.xml 中定義Activity的地方一句話android:theme="@android:style/Theme.Dialog"或android:theme="@android:style/Theme.Translucent"就變成半透明的

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

FrameLayout(框架布局),LinearLayout (線性布局),AbsoluteLayout(絕對(duì)布局),RelativeLayout(相對(duì)布局),TableLayout(表格布局)

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

一.SharedPreferences方式

二.文件存儲(chǔ)方式

三.SQLite數(shù)據(jù)庫(kù)方式

四.內(nèi)容提供器(Content provider)方式

五. 網(wǎng)絡(luò)存儲(chǔ)方式

請(qǐng)介紹下ContentProvider是如何實(shí)現(xiàn)數(shù)據(jù)共享的。

創(chuàng)建一個(gè)屬于你自己的Content provider或者將你的數(shù)據(jù)添加到一個(gè)已經(jīng)存在的Content provider中,前提是有相同數(shù)據(jù)類型并且有寫入Content provider的權(quán)限。

請(qǐng)解釋下Android程序運(yùn)行時(shí)權(quán)限與文件系統(tǒng)權(quán)限的區(qū)別。

運(yùn)行時(shí)權(quán)限D(zhuǎn)alvik( android授權(quán))

文件系統(tǒng) linux 內(nèi)核授權(quán)

系統(tǒng)上安裝了多種瀏覽器,能否指定某瀏覽器訪問指定頁(yè)面面?請(qǐng)說(shuō)明原由。

通過(guò)直接發(fā)送Uri把參數(shù)帶過(guò)去,或者通過(guò)manifest里的intentfilter里的data屬性

什么情況會(huì)導(dǎo)致Force Close ?如何避免?能否捕獲導(dǎo)致其的異常?

答:一般像空指針啊,可以看起logcat,然后對(duì)應(yīng)到程序中 來(lái)解決錯(cuò)誤

IntentService有何優(yōu)點(diǎn)?

答:IntentService 的好處

Acitivity的進(jìn)程,當(dāng)處理Intent的時(shí)候,會(huì)產(chǎn)生一個(gè)對(duì)應(yīng)的Service

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

非常容易使用

橫豎屏切換時(shí)候activity的生命周期?

1、不設(shè)置Activity的android:configChanges時(shí),切屏?xí)匦抡{(diào)用各個(gè)生命周期,切橫屏?xí)r會(huì)執(zhí)行一次,切豎屏?xí)r會(huì)執(zhí)行兩次

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

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

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

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

熱門推薦

最新文章