Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 面試總結1

Android 面試總結1

編輯:關於Android編程



1 handler message loop messageQueue
處理




2 fragment 生命周期




3 ContentProvider




4 WebView




5 BroadCastreciver 廣播




6 通訊錄 的 獲取 ContentProvider ContentReciver
獲取用戶的頭像,手機號碼 等。




7 ListVIew 圖片的錯位
思考一下:
getView() 看一下源碼








8 ListView 優化:
convertview view 的重用








9 service 服務
幾種方式:
第一種
startService()
第二種
bindService()




10 AsyncTask() 異步任務
常用的方法
doinBackground() 處理子線程
onUpdateExcute( )
onPostExcute( )




例如:
private class DownloadFilesTask extends AsyncTask {
protected Long doInBackground(URL... urls) {
int count = urls.length;
long totalSize = 0;
for (int i = 0; i < count; i++) {
totalSize += Downloader.downloadFile(urls[i]);
publishProgress((int) ((i / (float) count) * 100));
// Escape early if cancel() is called
if (isCancelled()) break;
}
return totalSize;
}




protected void onProgressUpdate(Integer... progress) {
setProgressPercent(progress[0]);
}




protected void onPostExecute(Long result) {
showDialog("Downloaded " + result + " bytes");
}
}




11 Volley




12 XUtils




13 HttpClient
get Post




14 Json 解析方式
有哪幾種:
org.json
gson
fastJson




15 XML 解析方式
Dom Tree
SAX
Pull




16 Intent 幾種方式




17 Activity 生命周期




18 ShareReferrence




19 Base64 是什麼?
用於傳輸,把文件變成字符串,接受到相關的字符串後,可以轉換成相應的文件;


20 加密的方式:


加密方式:
1.apk混碼,apk簽名打包
2.加權限




21 serizaable 可序列化
為了便於對象的傳輸,這個是Java裡面的
Android引入了Priczabble


22 XMPP




23 自定義View
柱狀圖
餅狀圖




24 JPush 推送




25 判斷網絡連接
ConnectivityManager 獲取它的類型,從而確定他是否連接了網絡




26 音頻




27 視頻




28 VIewPager


滑動的ViewGroup




29 圖片的緩存


1.首先在軟引用,如果存在的話,不存在從SD卡中獲取圖片,還不存在的話從網絡下載;
軟引用:不到資源吃緊,系統不會回收相關的資源;




30 Viewpager 和 horzitalScrollView



31 layout_grivity 當前子空間相對於父控件的位置


grivity 自己內部的內容




32 layout_weight 權重
平分 剩余的控件。




33 sql 數據庫
支持類型:




34 事件分發機制
View ondisPathTouchenvent();
onInnerTouch();
onTouchEvent();




35 國際原理


36 國際化原理
手機啟動的時候,檢測手機的語言,
回去加載en 結尾的xml文件。 如果沒有的話,
會自動加載默認的xml文件。




37 百度地圖




38 Java 的國際化?
local 本地化
屬性文件




1.既然你做過音頻,那音頻流與安卓的交互


2.視頻畫面和音頻的同步


3.ListView的下拉上拉 頭部底部的顯示效果 onlayout的參數意義 適配器getView的參數意義 包括刷新的機制 View的刷新機制 View的刷新方法區別(invalidate,postInvalidate) ListView的分頁思路


View:刷新方法,inValidate,postInvalidate(在線程中調用,會刷新UI)




4.既然單例裡有個靜態實例對象,為毛不直接用靜態類? 靜態變量是在內存常駐的麼?GC會不會銷毀? 多線程訪問單例的安全問題。
靜態類:不需要new 一個對象,裡面的屬性和方法都是靜態的
非靜態類:需要New一個對象,裡面的屬性和方法不一定都是靜態類;


是常駐的,Gc不會銷毀他,多線程訪問單例模式,記得對獲取該實例的方法進行同步;




5.四大組件 誰在主線程中。 intentService在實際項目中的運用,為何要用。
intentService:用於異步線程中,可以用於下載,會自動停止服務


四大組件都是在主線程中,IntenService作用


6.廣播引出的觀察者模式,以及android SDK裡所了解到的設計模式


7.自定義View 你會用到哪幾個函數 比如自定義listView 在哪些函數裡做操作來完成你想要的展示效果


構造方法肯定會有的,可以在裡面加載完你要的listview之後,實例你的listView,通過修改該ListView的適配器來修改顯示效果;


8.橫豎屏切換另外一種保存數據的方法 除了onSaveInstanceState


方法1:數據庫和SharePrefenrce;


9.SDK裡的設計模式涉及


10.runOnUiThread 和view的postDelayed 函數說明


runOnUiThread轉換成主線程,postDelayed就是到了什麼時間去更新UI,實質都是handler實現的;


11.線性布局 假設是水平 有3個按鈕 如何讓他們在兩邊排列 中間為空,還有gravity屬性在什麼情況下會失效


12.怎麼在代碼裡為相對布局的控件設置margin
android:layout_marginLeft = "20dp"


13.圖片的異步加載思路,


1.發送HTtp請求,下載圖片,下載完成後,通過Handler通知UI,更新圖片;


14.調用垃圾回收後 會把無用對象及時回收掉麼?


15.V4包裡常用到的類,以及干嘛用


16.Fragment的使用以及生命周期
onCreate onCreateView onPause onStop onDestroyView onDestroy


17.dialogfragment的使用


18.include進來的layout 直接寫margin是否會生效,以及為什麼


19.looper是個什麼東西


負責按順序取消息從MessageQueue中;



20.閱讀過哪些開源項目或者SDK裡某些類的代碼
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved