本文為大家介紹安卓底層開發(fā)需要什么知識(安卓底層開發(fā)前景),下面和小編一起看看詳細內(nèi)容吧。
關(guān)于學(xué)習(xí)安卓底層,懂得進
做android sdk開發(fā)3年了,感覺到了極限就不能再進一步了,所以花了一年多的時間,大概得到了一些提示。按照前輩們的經(jīng)驗,完全上手android底層需要兩年的時間。
先說一下我的入門過程:
第零步是下載源代碼。我下載了4.2。框架層源碼10g,內(nèi)核2g多,ctags為框架層創(chuàng)建的標(biāo)簽文件都是600m。我當(dāng)時有點震驚。我是用vim+ctags+cscope來閱讀的。還不錯,結(jié)構(gòu)挺清晰的。
第一步,找了一本好書《android的設(shè)計與實現(xiàn) 第一卷》,講了android框架層的啟動、初始化、服務(wù)框架初始化、binder、消息循環(huán)、packagemanagerservice、activitymanagerservice。據(jù)作者介紹,ui子系統(tǒng)的第二卷將在稍后發(fā)布,拭目以待。其實這本書看了幾十頁之后,我才意識到我需要第二步的知識,不然我是看不下去的,所以就直接跳到第二步了。
第二步,學(xué)習(xí)linux系統(tǒng)編程。看《android的設(shè)計與實現(xiàn)》的時候發(fā)現(xiàn)framework層的native部分都是linux編程。為了掌握這部分知識,我花了4個月的時間學(xué)習(xí)了《linux系統(tǒng)編程手冊》(tlpi)這本1000多頁的書。以前是做windows文件系統(tǒng)的,所以對c語言還是很熟悉的,tlpi的習(xí)題也很熟悉。挺有意思的,量也比較大。如果你堅持下去,你會收獲很多。
第三步,花了4個月的時間學(xué)習(xí)了一些linux內(nèi)核知識,看了lkd,看了一大半的plka。越學(xué)越不知底,越來越覺得自己不懂,不過這也正常,只能靠慢慢磨了,估計還要繼續(xù)以后磨這個地方。
第四步,回頭看android源碼。這次一口氣看完了《android的設(shè)計與實現(xiàn) 第一卷》,框架層的圖終于有了。同時,也著實讓我頭暈了好幾次。之前看linux內(nèi)核源碼的時候沒那么暈。一直在java層和native層之間跳來跳去,有點傷腦筋。其中感覺java的基礎(chǔ)不是太扎實,于是回去補了一個月的第八版《core java》。但是這本書不涉及ui子系統(tǒng),所以看了《android內(nèi)核剖析》
第五步,《android內(nèi)核剖析》(這本書其實是講框架層的,作者也是嵌入式的,所以寫框架層的時候?qū)懙牟皇呛芎?,很啰嗦,但是還是有的看的東西很多,后來他寫rom的時候,大概是在玩開發(fā)板的時候說起自己的專業(yè),過段時間看出來還是挺不錯的,這本書的知識有點老了。 all,講的是2.3.不過作者的很多思路很有參考價值)這本書在ui子系統(tǒng)和button/touch消息處理系統(tǒng)方面還是很重要的,尤其是第13章view繪制,結(jié)合源碼研究很有收獲。后來他說編譯框架和rom相關(guān)的東西都是很有價值的資料。
第六步,為了補充電源管理模塊等其他子系統(tǒng)的知識,閱讀了《深入理解android》系列。個人覺得這個系列看起來有點難受,但作為補充證明還是有價值的。
第七步,《android系統(tǒng)源代碼情景分析》,羅升陽的源碼分析大作,比《android的設(shè)計與實現(xiàn)》更詳細,但缺點是涉及的模塊少,選擇的源碼比《android的設(shè)計與實現(xiàn)》要老一些??赐陼€需要研究一下作者的博客。東西還挺多的,一定讓你滿意。
第八步,買個開發(fā)板自己玩。我還沒有走到這一步,因為我覺得我對知識的準備已經(jīng)差不多了。可能還需要幾個月的時間,然后我會準備買一個6410 或者raspberry pi。
最后,由于11年前從事windows,對linux知識了解不多。我不得不讀這些書。如果我一直在做linux,很多步驟都可以省略。直接看源碼才是正道。
我正在做移動gis 開發(fā)工作。由于興趣,我學(xué)習(xí)了框架層。不過,招聘平臺android框架層開發(fā)人員的競爭還是相當(dāng)激烈的。定制rom多,智能電視工作處于人才難求的狀態(tài)。畢竟有一定的門檻?,F(xiàn)在各種ios培訓(xùn)吸引了為了錢搶著開發(fā)的人,ios只能針對sdk開發(fā)的弊端暴露無遺。塊,我不認為它是好的。反觀android這邊,初學(xué)者雖然拿不到ios的錢,但是持續(xù)性很好,從sdk-frameworkdriverkernel開始。有很多人發(fā)現(xiàn)自己逐漸成為linux開發(fā)/嵌入式打拼后的開發(fā)者,新人、老手、菜鳥各司其職,層次分明。
《android開發(fā)精要》epub下載在線閱讀全文,求百度網(wǎng)盤云資源
《android開發(fā)精要》(范懷玉)電子書網(wǎng)盤下載免費在線閱讀
鏈接:
提取碼: mqnd
書名:安卓開發(fā)基礎(chǔ)
作者:范懷玉
豆瓣評分:8.1
出版社:機械工業(yè)出版社
出版年份:2012-8
頁數(shù):356
簡單的介紹:
《android開發(fā)精要》 如何編寫一個接近android設(shè)計理念,運行更高效可靠的android應(yīng)用程序?通過源碼了解android底層實現(xiàn)細節(jié)是最重要的途徑之一!但android系統(tǒng)過于龐大,源碼實現(xiàn)復(fù)雜,學(xué)習(xí)的技術(shù)門檻和時間成本較高。有沒有一種方法可以幫助開發(fā)者深入理解android應(yīng)用程序開發(fā)而不被底線所束縛?
層大量的實現(xiàn)細節(jié)所羈絆,迅速掌握編寫高質(zhì)量android應(yīng)用所需的知識?《android開發(fā)精要》針對這個問題給出了完美的答案!它從android繁雜的源代碼中抽取出了android開發(fā)的“精華”和“要點”,剝離了大量瑣碎的底層實現(xiàn)細節(jié),進行了高度概括和總結(jié),不僅能幫助開發(fā)者迅速從宏觀上理解整個android系統(tǒng)的設(shè)計理念,而且能幫助開發(fā)者迅速從微觀上掌握核心知識點的原理,從而編寫出高質(zhì)量的android應(yīng)用。
作者簡介:
范懷宇,資深android開發(fā)工程師,畢業(yè)于清華大學(xué),從事移動開發(fā)多年,對android系統(tǒng)有頗為深入的研究,開發(fā)經(jīng)驗十分豐富。曾就職于網(wǎng)易有道,負責(zé)完成了有道詞典android版、網(wǎng)易掌上郵android版、網(wǎng)易八方android版等項目的開發(fā)工作,現(xiàn)就職于豌豆實驗室 ,負責(zé)豌豆莢2.0版本的設(shè)計和開發(fā)。
國外有哪些關(guān)于android的學(xué)習(xí)網(wǎng)站或資料或論壇
國外的android學(xué)習(xí)網(wǎng)站最大資源帝google官方——android開發(fā)者網(wǎng)站。
google官方開發(fā)者支持平臺android developers,開發(fā)者可以找到google關(guān)于android設(shè)計(design)、開發(fā)(develop)及發(fā)布應(yīng)用(distribute)的官方說明文檔。
在develop(開發(fā))中,分別有教程(android training)、api指南(api guides)、引用(ref-erence)、工具(tools)四項內(nèi)容。下面就對這四項內(nèi)容進行簡單介紹。
(1)android training:在這個模塊中,google針對初學(xué)者和中高級開發(fā)者分別給出初級(get started)和高級(advanced training)兩個級別的教程。網(wǎng)站右側(cè)都提供demo工程下載,使開發(fā)者可以很方便地下載學(xué)習(xí)。
初級教程內(nèi)容包括應(yīng)用界面搭建、管理activity生命周期、對不同移動設(shè)備進行適配等內(nèi)容。高級教程則包括了大量的android系統(tǒng)特性及opengles使用等內(nèi)容。
(2)api guides:該模塊包含了android api說明文檔,對android中的每個功能模塊進行說明。說明文檔中有大量的范例代碼。如果對某一個控件或某一個傳感器的使用不明白.可以在這里找到答案。
(3)reference:根據(jù)android包結(jié)構(gòu)對每一個類及類中的接13、方法進行說明。對一個android方法的使用不是很明白時,就趕快來這里查查吧!可以使用網(wǎng)站右上角的搜索按鈕來尋找自己所需要的文檔說明。
(4)tools:這個模塊介紹了與android開發(fā)工具使用方法。
《android系統(tǒng)級深入開發(fā)》pdf下載在線閱讀,求百度網(wǎng)盤云資源
《android系統(tǒng)級深入開發(fā)》(韓超//梁泉)電子書網(wǎng)盤下載免費在線閱讀
資源鏈接:
鏈接:
提取碼: nx1v
書名:android系統(tǒng)級深入開發(fā)
作者:韓超//梁泉
豆瓣評分:6.2
出版社:電子工業(yè)出版社
出版年份:2011-2
頁數(shù):372
內(nèi)容簡介:《android系統(tǒng)級深入開發(fā):移植與調(diào)試》是一本全面介紹android系統(tǒng)級開發(fā)的作品,全書以移植和調(diào)試為重點。android具有一個龐大的軟件系統(tǒng),任何開發(fā)者都難以掌握系統(tǒng)的每一個細節(jié)。因此,如何高效地理解和開發(fā)系統(tǒng),就成了android系統(tǒng)級別工程師面對的主要問題?!禷ndroid系統(tǒng)級深入開發(fā):移植與調(diào)試》作者以實際的開發(fā)經(jīng)驗為基礎(chǔ),以軟件工程思想為指導(dǎo),完成了《android系統(tǒng)級深入開發(fā):移植與調(diào)試》?!禷ndroid系統(tǒng)級深入開發(fā):移植與調(diào)試》介紹了從android開源工程到一個基于實際硬件產(chǎn)品中的主要工作,一方面讓讀者清晰把握各個子系統(tǒng)的架構(gòu),另一方面讓讀者把握移植這個開發(fā)核心環(huán)節(jié)的要點。
讀者對象:linux開發(fā)人員、移動設(shè)備開發(fā)人員、android系統(tǒng)框架層和底層開發(fā)人員、有意圖深入學(xué)習(xí)android的人員、手機研發(fā)的公司。
作者簡介:移動系統(tǒng)開發(fā)資深工程師,在android領(lǐng)域具有完備的知識和前沿的技術(shù),長期從事一線開發(fā)工作。韓超是中國大陸地區(qū)較早參與android系統(tǒng)開發(fā)的人員之一,也是中國大陸的androidin(機鋒網(wǎng))開發(fā)社區(qū)的核心成員和重要組織者之一;也曾經(jīng)引領(lǐng)大陸各種相關(guān)技術(shù)人員進入android領(lǐng)域,并組織參與國內(nèi)外的相關(guān)枝術(shù)交流。
好了,安卓底層開發(fā)需要什么知識(安卓底層開發(fā)前景)的介紹到這里就結(jié)束了,想知道更多相關(guān)資料可以收藏我們的網(wǎng)站。