今天去了著名的百度面試,百度的環(huán)境很好,我很喜歡。
我在大廳等了一會,前臺在幫我預(yù)約面試官。不一會面試官來了,看起來他穿的很隨意。我想百度的工作氛圍應(yīng)該還是較為開放自由的。
人把我?guī)У搅?,很多圓形桌子的一個地方,好像這個地方是專門面試用的,周圍零零散散有幾個一同面試的。這個面試官看起來挺有親和力。先是讓我介紹一下之前做的項目。于是我簡單的說了每一個項目是做什么的,負(fù)責(zé)比較多的是哪里等等。說完之后,他給我一張紙。上面兩張圖,一張圖上畫著一個webview,下面是兩個按鈕,一個叫網(wǎng)頁,一個叫列表,webview里寫著一個apk的http地址。第二張圖是一個列表頁面,然后子項里包含一個進(jìn)度條,和一個暫停按鈕。看完之后他們說,點擊第一個webview里面的鏈接,跳轉(zhuǎn)到第二個頁面(列表頁)。他讓我設(shè)計一下這個程序。我仔細(xì)看了一下。首先我說了下A這個activity的布局,和B的布局。OK。這應(yīng)該不難。下面的兩按鈕,我看做是ActivityGroup。功能上,我思考了一下。這考的應(yīng)該是android與JS的交互,還有就是下載這個方法的寫法,再有就是如何更新進(jìn)度條,更新進(jìn)度條可能涉及到線程之間的通信問題。整理好思路,我跟他一步步的說。首先,webview加載的html里包含了一個鏈接,可以把webview添加一個JavaScriptInterFace接口,然后出現(xiàn)clickOnAndroid()這個方法。在這里面可以調(diào)用下載方法。 然后寫一個下載的方法,new 一個byte[],這的大小可以隨時取到,然后服務(wù)器會返回這個apk的大小,根據(jù)下載過的字節(jié)數(shù)跟實際的大小比,就可以下載的百分比。這個下載方法可以放在B里,因為進(jìn)度條也在B里。把A的鏈接地址傳給B,就能在B里進(jìn)行下載任務(wù),這個下載是在一個線程里進(jìn)行的。子線程進(jìn)行下載,同時將下載量用Handler 發(fā)消息通知主線程更新UI(進(jìn)度條)。
上述是這個例子部分的描述,其實難度倒是平易近人。只是在我說的過程中,面試官要求在紙上寫出方法名,至少寫偽代碼。我比較習(xí)慣編譯器了,所以有的方法名就記得不太清楚,就湊合用筆畫著。面試官問的很細(xì)致,包括列表如果建立,適配器如何寫,適配器里的getView如何寫?這些都要問。寫的部分大概就是這樣。
然后我來總結(jié)一下他問的問題。
1、說一下activity的生命周期?A——B的時候,A走什么方法?會不會一直在onPause()?
2、服務(wù)的啟動方式?服務(wù)與activity如何傳遞數(shù)據(jù)?
3、有沒有用過異步?寫出他的寫法以及內(nèi)部的方法。說明他們是在什么線程里?用的AsynTask時候遇到了什么問題?是如何解決的?或者是用AsynTask時候需要注意什么?
4、一個按鈕如果變色(點擊效果),要如何實現(xiàn)?
5、動畫有幾種方式?
6、剛才的下載,除了利用實現(xiàn)JavaScriptInterFace接口還有沒有其他方法?
7、下載完了如何跳轉(zhuǎn)到該軟件的安裝界面
8、能否在Thread的runable里面直接newHandler()?如果不能,說出原因?
9、如何使用數(shù)據(jù)庫,寫出來
第8題 沒答上來 我預(yù)感應(yīng)該不行,于是回去實驗了一下,果然報錯,大概的意思是,無法創(chuàng)建句柄(Android Can‘t create handler inside thread that has not called Looper.prepare()
),悲劇平時我也沒這么用過,就知道很別扭。
不管怎么樣,這是一次小小的經(jīng)驗和教訓(xùn),希望可以從中收獲就足矣。
-
Android
+關(guān)注
關(guān)注
12文章
3986瀏覽量
133087 -
工程師
+關(guān)注
關(guān)注
59文章
1600瀏覽量
70660 -
百度
+關(guān)注
關(guān)注
9文章
2368瀏覽量
94249
發(fā)布評論請先 登錄
百度世界大會亮點 五年五芯 百度宣布打造最硬AI云
百度世界2025進(jìn)行中 百度昆侖芯超節(jié)點亮相 性能巨幅提升
電子發(fā)燒友工程師看!電子領(lǐng)域評職稱,技術(shù)之路更扎實
百度在AI領(lǐng)域的最新進(jìn)展
上汽大眾與百度地圖達(dá)成戰(zhàn)略合作
長沙怎么這么難招硬件工程師呀
一位老電子工程師的十年職場感悟
百度智能云四款大模型應(yīng)用接入DeepSeek
百度百科啟動“繁星計劃”
百度正式回應(yīng)進(jìn)軍短劇領(lǐng)域
【面試題】人工智能工程師高頻面試題匯總:機器學(xué)習(xí)深化篇(題目+答案)
【面試題】人工智能工程師高頻面試題匯總:Transformer篇(題目+答案)

一位android工程師面試百度的經(jīng)歷
評論