1. 首頁
  2. 面試

Google Android 開發工程師職位面試題

Google Android 開發工程師職位面試題

近期很多公司招聘Android程式設計師,就一些常見的Android面試基礎題做下總結,看看你能做出多少道?

1. Intent的幾種有關Activity啟動的方式有哪些,你瞭解每個含義嗎?

這裡Android123提示大家,Intent的一些標記有FLAG_ACTIVITY_BROUGHT_TO_FRONT 、FLAG_ACTIVITY_CLEAR_TOp、FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET、FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS、FLAG_ACTIVITY_MULTIpLE_TASK和FLAG_ACTIVITY_NEW_TASK 等。每種含義大家看SDK文件和具體跑下這樣你的記憶會更深刻些。

2. Activity和Task的啟動模式有哪些? 每種含義是什麼?

有關在AndroidManifest.xml中的android:launchMode定義,主要有standard、singleTop、singleTask和singleInstance,同時對於android:taskAffinity這些問題大家也要了解,Android開發網在以前的文章中講過,不過很多開發者仍然不是很清楚,這些基礎問題我們以後仍然會再次總結。

3. 透過Intent傳遞一些二進位制資料的方法有哪些?

1). 使用Serializable介面實現序列化,這是Java常用的方法。

2). 實現parcelable介面,這裡Android的部分類比如Bitmap類就已經實現了,同時parcelable在Android AIDL中交換資料也很常見的。

4. 能說下Android應用的入口點嗎?

在Google的虛擬機器中Application例項中已經實現了main方法,有關具體的Application介紹可以參考 Android程式的.入口點是什麼,不是Main()嗎

5. Java基礎問題,說說HashSet和HashTable的區別?

這個相信Java程式設計師都知道HashSet相對於HashMap就是不能存放重複的資料,對於HashTable來說,存放的資料不能出現key或value為null這樣的情況。

6. Java基礎問題,用Java的集合類寫下廣度優先搜尋.

這個屬於基礎資料結構問題,透過佇列處理一層一層,相對於深度優先的棧處理方式來說更實用一些。

7. Android都有哪些XML解析器,都熟練掌握嗎?

這裡Xmlpull、SAX和DOM相信做過Web開發的都已經滾瓜爛熟了。

8. SQLite支援事務嗎? 新增刪除如何提高效能?

SQLite作為輕量級的資料庫,比MySQL還小,但支援SQL語句查詢,提高效能可以考慮透過原始經過最佳化的SQL查詢語句方式處理。

9. Android Service和Binder、AIDL你都熟練嗎?

作為Android重要的後臺服務,這些每個Android開發者都應該掌握,這也算是和Java SE最大的不同了,具體的例項大家可以檢視Android音樂播放器的原始碼Music.git中的,這裡不再贅述。

10. 你用過哪款Android手機,有哪些優點和不足,相對於iphone或Symbian又有哪些優缺點?

把這個作為面試題也是考察下,可以大概瞭解到它對Android的瞭解程度,多移動開發的認識。

[Google Android 開發工程師職位面試題]相關文章:

1.Google Android 開發工程師職位面試題

2.網際網路公司面試問題