Android基礎面試題集

2021-07-16 04:19:08 字數 1415 閱讀 4303

一、 什麼是activity?

activity是android的四大元件之一,一般的,乙個使用者互動介面對應乙個activity 

setcontentview() ,// 要顯示的布局,

activity 是context的子類,

同時實現了window.callback和keyevent.callback, 可以處理與窗體使用者互動的事件。

二、橫豎屏切換時候activity的生命週期。

這個生命週期跟清單檔案裡的配置有關係

1、不設定activity的android:configchanges時,切屏會重新呼叫各個生命週期,

onpause、onstop、ondestory、oncreate、onstart、onresume。

2、設定activity的android:configchanges=」orientation|keyboardhidden」時,切屏不會重新呼叫各個生命週期,只會執行onconfigurationchanged方法

三、你後台的activity被系統 **怎麼辦?如果後台的activity由於某原因被系統**可了,如何在被系統**之前儲存當前狀態?

除了在棧頂的activity,其他的activity都有可能在記憶體不足的時候被系統**,乙個activity越處於棧底,被**的可能性越大。

四、傳送特定廣播

在需要結束應用時,傳送乙個特定的廣播,每個activity收到廣播後,關閉即可。

//給某個activity 註冊接受接受廣播的意圖

registerreceiver(receiver, filter)

//如果過接受到的是 關閉activity的廣播 就呼叫finish()方法 把當前的activity finish()掉

五、service是否在main thread中執行, service裡面是否能執行耗時的操作?

service裡面不能

執行耗時的操作(網路請求,拷貝資料庫,大檔案 )。

在子執行緒中執行 new thread(){}.start();

特殊情況 ,可以在清單檔案配置 service 執行所在的程序 ,

讓service在另外的程序中執行。

六、什麼是intentservice?有何優點?

普通的service ,預設執行在ui main 主線程,,

sdk給我們提供的方便的,帶有非同步處理的service類,

非同步處理的方法 onhandleintent(),

onhandleintent() 處理耗時的操作。

七、為什麼要用contentprovider?它和sql的實現上有什麼差別?

遮蔽資料儲存的細節,對使用者透明,使用者只需要關心運算元據的uri就可以了,對應的引數 。

但是contentprovider 還可以去增刪改查本地檔案. xml檔案的讀取,更改,

網路資料讀取更改。

android 基礎面試題

string s new string a b 會生成幾個物件 答案 3個 arraylistl new arraylist l.add a l.add b l.add c l.add d string s l.get 0 s null l 集合有什麼變化 答 無變化 switch 型別 int s...

面試題集 redis

1.redis常用的五種資料型別 1.string 字串 string是簡單的 key value 鍵值對,value 不僅可以是 string,也可以是數字。它是redis最基本的資料型別,乙個redis中字串value最多可以是512m。2.hash 雜湊 redis hash 是乙個鍵值對集合...

ORACLE DBA面試題集

一 sql tuning 類 1 列舉幾種表連線方式 等連線 非等連線 自連線 外連線 左 右 全 2 不借助第三方工具,怎樣檢視sql的執行計畫 i 使用explain plan,查詢plan table explain plan set statement id query1 forselect...