重囗另类BBWSeⅹHD,av狼论坛,精品一卡2卡三卡4卡乱码理论,体育生gv老师浪小辉3p警察

Android工程師面試題

時間:2024-09-19 09:30:41 學人智庫 我要投稿
  • 相關(guān)推薦

關(guān)于Android工程師面試題

  singletask:棧內(nèi)復(fù)用模式。不是在當前任務(wù)棧中查找是否存在,實際過程如下:

關(guān)于Android工程師面試題

  查找該Activity所需的任務(wù)棧是否存在(由taskAffinity控制,或者默認為包名)。

  在任務(wù)棧當中查找該Activity是否存在。

  這里面存在任務(wù)棧的切換,也就是當開啟的singtask類型的Activity不屬于當前任務(wù)棧時,則會切換到其任務(wù)棧。

  singleInstance:單實例模式。

  包含了singleTask的所有特性,另外加上:設(shè)置為該模式的Activity,只能單獨存在于一個任務(wù)棧中。當有兩個singleInstace的Activity設(shè)置成同樣的任務(wù)棧時,會出現(xiàn)兩個同名的任務(wù)棧,分別用來存放同名的Activity。

  注:在任何跳轉(zhuǎn)的時候,首先調(diào)用本Activity的onPause,然后跳轉(zhuǎn)。如果被跳轉(zhuǎn)的activity由于啟動方式而沒創(chuàng)建新的實例,則會先調(diào)用onNewIntent,然后按照正常的生命周期調(diào)用。

  如

  1:A→B,A:onPause;B:onCreate,onStart,onResume。

  2:A(singleTop)→A,A:onPause;A:onSaveInstanceState;A:onResume。

  3、View的繪制

  推薦郭霖大神的博客:

  https://blog.csdn.net/guolin_blog/article/details/16330267

  4、canvas的使用

  推薦以下博客:

  https://blog.csdn.net/qinjuning/article/details/6936783

  5、ActivityManagerService的相關(guān)知識點

  推薦以下博客:

  https://wiki.jikexueyuan.com/project/deep-android-v2/activity.html

  6、Activity切換時生命周期交集

  Activity之間的協(xié)作當一個activity A啟動了另外一個activity B,它們的生命周期是有交叉的;

  首先A的onPause()被調(diào)用;

  之后B的onCrate(), onStart()及onResume() 方法會被調(diào)用(此時B擁有用戶焦點);

  最后,如果A在屏幕上不可見,onStop()方法被調(diào)用;

  因此,我們在兩個activities中傳遞數(shù)據(jù),或者共享資源時(如數(shù)據(jù)庫連接),需要在前一個activity的onPause()方法而不是onStop()方法中進行;

  7、Hybrid(重要加分項)

  java和JS的交互

  https://droidyue.com/blog/2014/09/20/interaction-between-java-and-javascript-in-android/

  https://rensanning.iteye.com/blog/2043049

  WebView開啟JavaScript腳本執(zhí)行

  WebView設(shè)置供JavaScript調(diào)用的交互接口。

  8、網(wǎng)絡(luò)編程

  volley

  https://bxbxbai.github.io/2014/09/14/android-working-with-volley/

  https://blog.csdn.net/guolin_blog/article/details/17656437

  如何控制TCP連接時的擁塞

  https://blog.csdn.net/yechaodechuntian/article/details/25429143

  三次握手

  https://blog.csdn.net/whuslei/article/details/6667471

  Android客戶端和服務(wù)端如何使用Token和Session

  https://wyong.blog.51cto.com/1115465/1553352

  移動端獲取網(wǎng)絡(luò)數(shù)據(jù)優(yōu)化的幾個點連接復(fù)用 :

  節(jié)省連接建立時間,如開啟 keep-alive。

  對于 Android 來說默認情況下 HttpURLConnection 和 HttpClient 都開啟了 keep-alive。只是 2.2 之前 HttpURLConnection 存在影響連接池的 Bug,具體可見:Android HttpURLConnection 及 HttpClient 選擇

  請求合并:

  即將多個請求合并為一個進行請求,比較常見的就是網(wǎng)頁中的 CSS Image Sprites。如果某個頁面內(nèi)請求過多,也可以考慮做一定的請求合并。

  減少請求數(shù)據(jù)的大。

  對于post請求,body可以做gzip壓縮的,header也可以作數(shù)據(jù)壓縮(不過只支持http 2.0)。

  返回的數(shù)據(jù)的body也可以作gzip壓縮,body數(shù)據(jù)體積可以縮小到原來的30%左右。(也可以考慮壓縮返回的json數(shù)據(jù)的key數(shù)據(jù)的體積,尤其是針對返回數(shù)據(jù)格式變化不大的情況,支付寶聊天返回的數(shù)據(jù)用到了)

  根據(jù)用戶的當前的網(wǎng)絡(luò)質(zhì)量來判斷下載什么質(zhì)量的圖片(電商用的比較多)。

  9、android開發(fā)中,可能會導(dǎo)致內(nèi)存泄露的問題

  不要讓生命周期長于Activity的對象持有到Activity的引用

  盡量使用Application的Context而不是Activity的Context

  盡量不要在Activity中使用非靜態(tài)內(nèi)部類,因為非靜態(tài)內(nèi)部類會隱式持有外部類實例的引用(具體可以查看細話Java:”失效”的private修飾符了解)。如果使用靜態(tài)內(nèi)部類,將外部實例引用作為弱引用持有。

  垃圾回收不能解決內(nèi)存泄露,了解Android中垃圾回收機制

  **更多內(nèi)容可以參考以下博客:

  https://spencer-dev.lofter.com/post/d7b9e_6faf120

  10、activity的啟動過程:

  https://www.cloudchou.com/android/post-788.html

  以上是我遇到和搜集到的各類題目以及相應(yīng)的解答,接下來一段時間也會持續(xù)更新,大家遇到什么經(jīng)典或者不會的問題也可以給我留言,在此統(tǒng)一分享給大家。祝大家能夠找到自己心儀的工作,前途一片光明!

【Android工程師面試題】相關(guān)文章:

投行面試題07-24

軟件測試面試題01-17

中層副職競聘面試題09-05

來看看谷歌的面試題08-17

濟南稼軒中學小升初面試題07-21

壓力危機類面試題目突破技巧11-09

今年最強的面試題和最牛的答卷09-20

考察個人價值觀的另類面試題02-21

人力資源行業(yè)常見面試題匯總02-03

面試題:給我們一個錄取你的理由?11-16

主站蜘蛛池模板: 兴安盟| 三明市| 洪泽县| 开封县| 遂平县| 巴彦淖尔市| 墨竹工卡县| 上林县| 鞍山市| 桂林市| 四川省| 桓仁| 乌苏市| 黑河市| 南丰县| 普兰店市| 邵东县| 定西市| 阿拉善左旗| 民乐县| 喀喇沁旗| 武川县| 黔东| 镇巴县| 武定县| 五华县| 兴山县| 阳信县| 阿鲁科尔沁旗| 新乐市| 砚山县| 东至县| 怀安县| 简阳市| 通道| 永新县| 峨眉山市| 彭州市| 邻水| 镇江市| 陇川县|