精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
【安卓科普大作】小白一夜變高手,絕對精品!
 
 
 

 【安卓科普大作】小白一夜變高手,絕對精品!

 
發表于 2012-7-25 11:31:35 |原文作者:Cim

提供Word版本下載,方便閱讀。請見文尾。
如果你是小白,請你耐心看看,收獲頗豐。如果是老手,看看可以知道如何晉級為高手。

一.安卓的古往今來(了解就夠啦)
         Android是一種以Linux為基礎的開放源代碼操作系統,主要使用于便攜設備。目前尚未有統一中文名稱,中國大陸地區較多人使用“安卓”或“安致”。Android操作系統最初由Andy Rubin開發,最初主要支持手機。2005年由Google收購注資,并組建開放手機聯盟開發改良,逐漸擴展到平板電腦及其他領域上。Android的主要競爭對手是蘋果公司的iOS以及RIM的Blackberry OS。2011年第一季度,Android在全球的市場份額首次超過塞班系統,躍居全球第一。
(好吧,我承認這段是Copy度娘百科的,瞎看看就得了。)

二.安卓的特點(了解了解即可)
說到安卓,當然最大的特點就是開源。也許專業名詞你不懂,這沒關系。如果稍微知道點電腦的同學會聽過編譯,編程,例如我要寫一個計算1+1=?的程序,寫好了代碼,這個就叫源碼。源碼是一行行的英文字符串,這是文本不能運行,用編譯器做成了exe文件之后,就可以運行了,源碼到程序這過程就叫編譯。但是呢,編譯出來的東西,很難在回到源碼,所以沒有源碼的人就很難修改。開源就是公布源碼,大家都可以在這個基礎上改,Diy,開源就是這么回事。
那么開源有什么好處呢?就是大家都可以修改,發布修改的程序,所以安卓系統就繽紛多彩。自然就會有很多很牛的大神作出很多功能很多性能很好的優化版本,這就是開源的好處。

三.安卓手機其實就是個小電腦有許多分區(小白必讀)
就如這一節的標題,其實不光安卓,應該說智能機就是個小電腦。不過本文就只說安卓的那點事。一切要從安卓的“硬盤”說起。
就說一臺電腦,硬盤上有很多個分區,例如“C盤”是裝系統的,“D盤”是存用戶的東西的。安卓機也是如此,在安卓的硬盤里也有許多的分區,類似C盤D盤,不過不叫這個,每個分區都有自己的名字。下面我就要逐個說說主要的分區了。
System:顧名思義,系統分區,就是主操作系統啦,相當于C盤。
Data:存放你的各種應用程序,游戲,設置,存檔的地方。
Recovery:這個得多說說,不知道同學知不知道電腦上雙系統?在啟動電腦的時候可以選擇我是進Win7呢還是進XP。比如我主要用Win7,但是有一天他壞了,我進入XP來修復我的Win7,這個“XP”就是在安卓里就是Recovery,其實就是個“小型”操作系統。
Radio:就是基帶,手機比電腦多出來的功能就是通訊嘛,你通訊的驅動就放在這里。
Boot:內核分區,相當于電腦里面的驅動,專門放驅動的分區。
Firmware:固件分區,相當于電腦的Bios,你說你不懂啥是Bios?你不用懂,你只需要知道,這個是最底層的驅動,直接和硬件打交道,如果他壞了,你的手機那就是100%的磚頭了。別的分區壞了可以刷,相當于電腦從新裝個系統罷了,這個分區壞了,管你電腦還是手機,主板要不大修,要不換一塊了。
其他分區一般情況是用不到的,在這里也就不介紹了。
同學發問,那么SD卡是什么分區?我告訴你,這個不在硬盤里,這個是“移動硬盤”,當然有些手機所謂的內置SD卡,就是用一部分硬盤空間劃出個分區當SD卡了。
我給大家講解了這些分區但是它們有別的稱呼,在此也介紹一下。
Userdata=Data
Baseband(BB)=Radio
Kernel=Boot
BootLoader(BL)=HBOOT=SPL=Firmware
Rec=Recovery
至于ROM這個沒有準確的概念,一般來說ROM=System+Kernel。但是也會在論壇聽到,我用的XXX大神的ROM,XXXX大神的內核。到底ROM指的是System還是System+XXX+XXX,具體問題具體分析。

四.這個小電腦是怎樣啟動的?(小白必讀)
這個問題很重要,就先你按了開機鍵,最先啟動的是BootLoader,他會對各個硬件進行參數設定,初始化,給System設置只讀或者讀寫等等,默認情況下,如果你什么都不做,他就會啟動System,然后手機就打開了。
所謂的解鎖,就在這BL里,如果BL在一起動就設置System是只讀的,無論什么方法,你也別想修改這“C盤”了。解鎖就是讓BL在啟動的時候設置各個分區可讀取可寫入。
那么童鞋就問了,ROOT是怎么回事?這其實很好解釋,就算你解鎖了,各個分區硬件上允許你讀寫了,你運行的操作系統會允許你修改自己,甚至刪除自己嘛?當然不會,怎么才能這樣做?在系統里插入個間諜文件Su,系統以為它是系統文件,允許它“胡來”。
那就是ROOT。
那么怎么插入這個間諜Su呢?一般方法有兩個,一個是系統有漏洞可利用,另一個就是在Recovery下刷入到系統里。

五.手機的第二個系統Recovery(小白必讀)
就如標題所說,他是手機的第二個系統,平時是用不上的,但是遇到特殊情況,比如主系統壞了,主系統需要升級等等,需要恢復到出廠,它就會派上用場。
想要進入Recovery當然還得從BL說起。手機開機,BL啟動,默認就直接打開主系統了,但是如果開機時你按一些鍵,或者特定的按鍵組合,BL就知道,要啟動的不是主系統。不同手機按鍵不同,進入到的頁面更不同。有些手機BL會提供個菜單,有的手機直接按對應的鍵,進入對應的功能。
進入到Recovery以后,就可以對主系統進行許許多多的操作了。不過官方自帶的Recovery并沒有很多的功能,一般來說,官方自帶的 Recovery只有以下功能,恢復出廠,其實就是把Data分區給格式化了。要不就是刷個官方的OTA補丁,干不了什么。
真正強悍的在這里,CWM Recovery,這是什么?
就是ClockworkMod(CWM)做的Recovery。
他有許許多多官方Recovery沒有的功能,當然最主要的就是能夠刷入各種非官方的補丁,甚至是完全刷入一個完整的系統。
那么怎么才能擁有它?怎么能用它替換掉官方的Rec?
一般來說有兩條路,一個是通過系統漏洞得到ROOT,再用ROOT刷入Rec,另一個就是解鎖后用Fastboot刷入。

六.傳說中的Fastboot(小白了解即可)
這東西之前一直沒提,他并不是一個分區,他只是BL的一個功能。簡單來說你進入了BL,啟用了Fastboot,這時候,只要你手機線接到電腦,就可以從電腦輸入指令給手機,讓手機執行許許多多的命令。當然你不必學習這個,更不用學習那些命令,一般來說,各位大神肯定會把命令做成一個程序,你只要點下鼠標,做些很簡單的操作即可。
上一節說到怎么刷入Rec,就是通過這Fastboot(FB)來完成的。雖然論壇有很多大神的腳本,運行下就OK,但是如果可以,我還是建議大家學學這玩意,無論系統怎么升級,這些東西是變不了的,學會了這個,才能以不變應萬變。
刷入了CWM Recovery基本上刷機已經夠了,刷什么ROM?用什么內核?刷啥基帶?自己慢慢選吧。

七.有個東西叫ADB(小白了解即可)
ADB這東西和Fastboot比較相似,都是電腦連接手機,給手機下達命令的,但是ADB是基于System的,而FB是基于BL的。
原本ADB的功能很小,也就是把個安裝包發到手機上安裝上,或者卸載,或者在電腦和手機間收發下。但是有了ROOT,ADB就不一樣了,他可以給手機下達一些“圈圈”以外的命令,因為安卓就是基于Linux系統的嘛,所以就可以下達很多Linux命令,例如rm,cp,mv,甚至是dd。。。
有些手機在沒有Rec之前,就要靠dd命令來刷img鏡像文件。
而且通過系統漏洞獲取ROOT一般也是通過ADB。
我個人覺得,ADB的東西更偏向于Linux的學習,不多講了。

八.如何玩轉安卓系統(小白選學)
光刷機,刷ROM,刷基帶,刷內核,這還不夠。給你一個強大的內核,可以給CPU調節頻率,調節電壓,調節模式。可以調節最大音量,有這樣那樣的功能,不會用還是不行啊。
因為不同的內核調節方式不盡相同,因此不說具體操作了。
我想CPU頻率應該不用多說,大家都懂,CPU電壓你又知道多少呢?一個CPU里面有許多的晶體管,其實就是一堆開關,例如斷路就是0,通路就是1,由此來執行二進制命令。所以有人把CPU當電阻絲說什么功率一定降壓升高電流之類的。別出來丟人了,不知道咱可以不說話,說話可以帶上“個人認為”,“我猜測”,那一個個義正嚴詞的樣子,太誤人子弟了。回歸正題,CPU電壓的意義在于,CPU電壓越高,0或1的信號就會越清晰,這很好理解吧。但是升壓也會有副作用,就是電子遷移效應增強,CPU放熱更加嚴重。同樣的降壓會讓CPU更涼快,但是信號會變模糊,CPU穩定性會降低。在這里我并不多講CPU的工作原理,只想讓大家記住調CPU的一條規律。頻率和性能正相關。發熱和電壓正相關。當然,熱的能量從哪里來?答案肯定是電池,省電還是費電大家肯定明白。
總歸:頻率一定時,在穩定的前提下,電壓越低越好。
至于CPU調節模式,比較多,還是請問度娘吧。

九.我也要玩DIY(向高手晉級)
刷機,刷別人的ROM,總歸沒有100%符合自己口味的吧,尤其是愛美化的同學,想加個電量百分比了?想讓狀態欄透明了?想漢化了?這時候你就需要學習反編譯了。
之前早在第二節就概述的源碼,編譯,是怎么回事。這里說的反編譯自然很好理解,就是把已經編譯成的程序在變回源碼。你不是說很難回來了嘛?對的,很難不是不能,一部分東西是能回來的,這部分東西就是后綴是apk,jar,odex的文件。
由于這一節學問太大了,我不可能手把手教會你每一個操作,我只能說的大致方向,其他自行百度。首先反編譯肯定要“配置java環境”之后要用“apktool”這個程序對apk進行反編譯,對得到的源碼進行一定的修改,最后在用apktool編譯成apk文件。最后,用“Auto-sign”軟件對編譯得到的程序進行簽名。如果是系統程序,要求簽名不能改變,那么就用winrar打開apk文件,其實apk文件就是個zip壓縮包,將自己編譯的內容替換掉原本apk的內容即可。如果程序是apk和odex兩部分,那么需要用smali把odex反編譯為smali文件,按需要修改后再用baksmali編譯成classes.dex加入到apk中。如果需要將apk分離成apk+odex兩部分,那么需要用dexopt-wrapper這個程序,在linux環境下分離。如果這odex是系統文件,也需要簽名,使用busybox的dd命令復制原始文件簽名到你Diy的文件。
請原諒我講的如此概略,因為實在學問太深了。

十.我也要發布ROM(高手晉級)
自己漢化,自己美化,自己加入了很多功能,是不是也想給網友們一起分享呢?這時候你需要學習怎么做ROM了。其實做ROM的關鍵是CWM Recovery腳本的編寫。你把你的ROM或者一個XXX補丁,文件與腳本用ZIP的方式打包起來簽名,就可以了,具體的格式規范我還是建議你親自拆個包看看。編寫腳本才是關鍵,你問我如何編寫腳本?首先說腳本就是一條條的命令,Recovery會按照你的命令執行操作,一般都是這樣的流程。格式化命令,掛載命令,刪除命令,復制命令,,設置映射,設置文件權限,刷入內核img文件,刷入基帶的img文件,最后最后結束掛載。具體的英文命令是什么請去CWM網上查,或者拆個別人的包,看看就全都清楚了,這節我也不會說太多,因為內容實在太多。請大家善用百度谷歌,我學的這些也全是百度谷歌來的。

十一.Linux下編譯開發(你就是高手)
一般Linux環境,多用的操作系統是Ubuntu,我強烈推薦大家用Ubuntu-10.04.4-desktop-amd64這個版本,Ubuntu并不是版本越高越好。我當年用11點幾的最新版本,編譯安卓4.0,結果是一堆的錯誤,根本make不出東西。另外編譯源碼最好用64位操作系統,32位下編譯也是一堆錯誤。
好啦,內容沒說先說一堆注意事項。下面正式介紹編譯。
我們說了開源,這里就是開源的真正意義所在了,例如谷歌發布的JB4.1,現在源碼還未公布,假如公布了,你首先要下載源碼,一般來說好幾個G是肯定的。如果是親兒子,拿來用就好,如果是非谷歌的手機,還要去下載這款手機的源碼,然后將這部分源碼覆蓋到下載的源碼上。之后根據需要添加刪除修改代碼。最后執行編譯得到系統的,內核的,等等img文件,最后Fastboot刷入img到手機。如果需要的話,解壓img做成ZIP刷機包,然后REC下刷。
編譯安卓代碼需要很多的軟件組件,如果編譯內核還需要交叉編譯器。我只能說,你現在所做的事情和谷歌工程師所做的事情是一樣的所以我不可能說的面面俱到,說真的,我也只不過能做到拿來源碼,很簡單的修改下,Copy點大神寫的功能添加進來編譯到頭了。
例如頂頂大名的CM團隊(CyanogenMod)就是從事源碼編譯這方面工作的。

Word文檔下載:

本帖隱藏的內容

anzhuokepujuzuo_xiaobaiyiyebiangaoshou_164747.rar (9.09 KB, 下載次數: 55)


本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
小米-22S Mokee8.1 自定義DPI Prop編輯 Xp框架 V4音效 最好原生 純凈實用 實用版
關于刷機方面的基礎介紹--讓小白新手也能很好的掌握刷機知識
極其詳細2022 root刷面具教程(twrp刷入)(高通) 來自 whuhu1998
榮耀play 8.1原廠系統 刷TWRP,root,xposed框架 一氣呵成!
一款零編程在手機上制作安卓應用的軟件︱可完整編譯apk文件
android源碼編譯apk的一點小總結
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 顺义区| 始兴县| 信丰县| 丰城市| 凤庆县| 绥芬河市| 贵定县| 通化市| 大理市| 阳信县| 同心县| 辉县市| 普洱| 泗洪县| 西充县| 调兵山市| 仪陇县| 嘉义县| 青冈县| 南乐县| 潢川县| 长汀县| 贺州市| 若尔盖县| 宜春市| 明水县| 延庆县| 同仁县| 宣武区| 顺平县| 平泉县| 苏尼特左旗| 黄浦区| 琼中| 临漳县| 杭锦后旗| 神木县| 罗甸县| 安丘市| 曲周县| 阿克苏市|