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

一位老電子工程師的十年職場感悟

百度百科啟動“繁星計(jì)劃”
百度正式回應(yīng)進(jìn)軍短劇領(lǐng)域
【面試題】人工智能工程師高頻面試題匯總:機(jī)器學(xué)習(xí)深化篇(題目+答案)

人工智能工程師高頻面試題匯總——機(jī)器學(xué)習(xí)篇

百度世界2024公開課完美結(jié)束
百度小度將發(fā)布AI智能眼鏡
百度市值被低估?分析師看好其長期發(fā)展?jié)摿?/a>
百度百舸AI計(jì)算平臺4.0震撼發(fā)布

評論