精通android(Pro Android 4)面试题总结(一)
? ? 有些知識會了,但不一定理解了機制,或者不會很深入體會。最近開始看《精通android》(Pro Android 4)這本書,發現書本后面有一些面試題,看了一下。發現還是有些幫助,不錯!!就上網找答案,可是網上好像沒有這類資源(也許是我沒找到),所以準備自己總結一下。
? ? 這本書工31章,除了第一章沒有面試問題外,其余都有。所以樓主會根據自己看書的進度,定期更新。(答案是搜索+自己理解體會,可能有不對的地方歡迎指正!)
? ? 歡迎訪問新博客:www.anumbrella.net , 我盡量兩個博客都更新。
? ? 本博文為原創轉載請注明鏈接:http://www.cnblogs.com/anumbrella/p/4869002.html
? ?第二章:
? ?1.Android開發是否需要JRE或JDK?
? ? 答: android開發主要是用java語言,當然也支持ndk(c,c++),如果用java開發,肯定是需要JDK(Java Development Kit ,java語言開發工具包),而JRE(Java Runtime Environment,Java運行環境)則不需要,它主要用于運行java編寫的程序。
? 2.是否能夠不使用Eclipse進行Android開發?
? ? 答: 首先我們要知道Eclipse是什么,它是一款開源的ide集成軟件(像Android Studio、Intelij IDEA一樣的),只是提供一種便利的開發方式,你可以不使用它,比如直接使用Android?SDK(Software?Development?Kit,Google提供的android軟件開發工具包),通過使用SDK命令來使用開發。(eclipse其實也是調用的這些命令,只是它把它們都圖形化了)
? 3.Android SDK 中 tools 和 platform-tools 目錄有什么區別?
? ? 答:tools文件夾包含重要的工具,比如ddms用于啟動Android調試工具,比如logcat、屏 幕截圖和文件管理器,如:draw9patch則是繪制android平臺的可縮放png圖片的工具,sqlite3可以在PC上操作SQLite數據庫,monkeyrunner是一個不錯的壓力測試應用,模擬用戶隨機按鍵,mksdcard是模擬器SD映像的創建工具,emulator是 Android SDK模擬器主程序。而platform-tools則保存著一些通用工具,比如adb、和aapt、aidl、dx等文件(其實SDK目錄下還包含platforms文件夾,它是每個平臺的SDK真正的文件,里面會根據APILevel劃分的SDK版本)
? 4.什么是Android視圖?
? ? 答:View是UI元素,是構成用戶界面的基本構建塊。View可以是一個按鈕、便簽、文本字段或者各種其他UI元素。視圖也可以是其他視圖的容器,如:線性布局(Linear Layout)、相對布局(Relative Layout)、表格布局(Table Layout)、網格視圖(Grid View)、標簽布局(Tab Layout)、列表視圖(List View)、絕對布局(AbsoluteLayout)等,最終,所看到的一切都是視圖。
? 5.什么是Intent?
? ? 答:Intent是執行某種工作的“意圖”。主要是解決Android應用的各項組件之間的通訊。Intent負責對應用中一次操作的動作、動作涉及數據、附加數據進行描述,Android則根據此Intent的描述,負責找到對應的組件,將 Intent傳遞給調用的組件,并完成組件的調用。
? 6.判斷:應用的構建目標必須同時設定的最低SDK版本一樣。為什么?
? ?答:不正確,因為android系統存在多個版本,如android4.0,5.0,6.0,不同的手機系統版本不一樣。我們設置最低的SDK和構建目標是保證app應用能夠在多個版本上都能兼容運行,為了保證程序的兼容性不能設置為一樣的。
? 7.在選擇應用包名時,必須采取哪些預防措施?
? ?答:包名是一個應用的唯一身份標示,包名一樣系統就認為是同一個應用,重復安裝的時候會覆蓋。因此我們在設計app包名時應當保證包名的唯一性,一般是使用域名倒置的寫法來保證唯一性。
? 8.什么是AVD?它的作用是什么?
? ?答:AVD(Android Virtual Device,Android虛擬設備),AVD使開發人員無需使用真實的Android設備(手機或者平板電腦)就可以測試應用程序。可以在各種配置下創建AVD來模擬不同類型的真實設備。
? 9.什么是AVD快照?如何使用?
? ?答:Snapshot的意思是“快照”。能夠保存AVD關閉時的狀態,然后再下一次啟動的時候顯示上一次關閉時的狀態,類似緩存機制。因為AVD啟動比較緩慢,啟動快照,能夠加快啟動速度。使用:在編輯AVD菜單上勾選上snapshots選項即可。
? 10.應用所需要的MP3文件應該存儲在哪一個源文件夾?
? ?答:存放在assets文件夾下面。
? 11.應用的圖標文件保存在什么位置?
? ?答:存放在drawable文件夾下面。
? 12.活動的第一個生命周期回調函數是什么?
? ? 答:onCreate()函數。
? 13.活動的最后一個生命周期回調函數是什么?
? ?答:onDestroy()函數。
? 14.哪一個類可以用于記錄應用的日志消息?
? ?答:Log類。
? 15.用于記錄日志消息的所有方法有哪些,它們的區別是什么?? ?
? ?答:Log類,提供了5個靜態方法z,Log.v(String tag, String msg)、Log.d(String tag, String msg);、Log.i(String tag, String msg)、?Log.w(String tag, String msg)、Log.e(String tag, String msg)、分別對應 Verbose(啰嗦), Debug(調試), Info(提示), Warning(警告),Error(錯誤)。區別:Log.v 的調試顏色為黑色的,任何消息都會輸出;Log.d的輸出顏色是藍色的,僅輸出調試的信息,它也會輸出上層的信息;Log.i的輸出為綠色,一般提示性的消息information,它不會輸出Log.v和Log.d的信息,但會顯示i、w和e的信息;Log.w的意思為橙色,可以看作為warning警告,一般需要我們注意優化Android代碼,同時選擇它后還會輸出Log.e的信息;Log.e為紅色,可以想到error錯誤,這里僅顯示紅色的錯誤信息,這些錯誤就需要我們認真的分析,查看棧的信息了。
?
轉載于:https://www.cnblogs.com/anumbrella/p/4869002.html
總結
以上是生活随笔為你收集整理的精通android(Pro Android 4)面试题总结(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用 Selenium 自动化 web
- 下一篇: 优秀的Android资源