當前位置:首頁 » 操作系統 » cyanogenmod源碼下載

cyanogenmod源碼下載

發布時間: 2022-05-16 10:57:14

㈠ 求android源碼下載地址,就像學學源碼的原理

Google剛剛公布,穩定版的Android源代碼已經公布,任何人都可以免費下載。Google希望通過公布源代碼,電信運營商和手機製造商,乃至一般開發者們進一步深刻了解和利用Android系統,從而有益於該平台下的的發展。
看來T-Mobile G1不一定打得過iPhone,那麼Android呢?
現在源代碼公布在http://source.android.com/,SDK網站是http://code.google.com/android/

㈡ 如何針對特定機型,編譯cwm recovery

你必須使用32位或64位Ubuntu系統,關於如何建立編譯環境和同步源碼的指導,請自己查找有關指導的文章。
1,
安裝所需要的包
2,
建立編譯的環境,並同步CWM所需的源碼,CyanogenMod源碼中附帶CWM源碼
CWM
5
-
Gingerbread
CWM
6
-
Jellybean
3,
下面我們進入真正的編譯階段,確保你已經使用「repo
sync
」命令同步了最新的源碼
進入源碼的目錄
放出以下命令:
make
-j4
otatools
3.5,
如果你的機型不被CM10官方支持,請執行這一步
在你的手機終端上執行以下命令,
mp_image
boot
/sdcard/boot.img
這將boot鏡像導出到你手機的sdcard,復制該鏡像至你的home目錄下
為一款新設備編譯android源碼,需要建立相應的配置文件和makefile文件,這通常比較麻煩,如果僅僅編譯recovery鏡像,會容易的多。在android源碼根目錄下(假設已運行envsetup.sh),運行以下命令(使用適當的名稱取代命令中的名稱)
build/tools/device/mkvendor.sh
device_manufacturer_name
device_name
/your/path/to/the/boot.img
例如,你擁有Samsung
Galaxy
Ace這款設備,你應該使用以下這條命令
build/tools/device/mkvendor.sh
Samsung
cooper
~/boot.img
Please
note
that
Cooper
is
the
device
name.
Only
use
"~/boot.img"
if
you
have
the
boot
image
in
your
home
directory.
Or
else
please
specify
the
correct
path.
如果所有都工作正常,你將看到"Done!"這樣的確認信息。mkvendor.sh腳本也將在你的android源碼樹中創建以下目錄:
manufacturer_name/device_name
4,
現在你已經擁有相關的配置文件
在源碼目錄下,在terminal終端下鍵入以下命令
.
build/envsetup.sh
這一步將為你建立編譯環境
現在使用這條命令
lunch
full_device_name-eng
這將為你的設備建立起build
system。用文件管理器或IDE打開目錄,你應該擁有以下文件:
AndroidBoard.mk,
AndroidProcts.mk,
BoardConfig.mk,
device_.mk,
kernel,
system.prop,
recovery.fstab,

vendorsetup.sh
對你感興趣的應該是recovery.fstab和kernel這兩個文件,kernel這個文件是你之前從boot.img文件中提取出的。recovery.fstab將適用於大部分擁有
mtd,
emmc,或者其他分區的設備。如果沒有,recovery.fstab將需要優化以支持載入這些點。例如
/sdcard被載入至/dev/block/mmcblk1p1,
你需要將下面這段加入到你的BoardConfig.mk文件中
/sdcard
vfat
/dev/block/mmcblk1p1
一旦recovery.fstab已經適當的裝載,你可以開始下一步了
5,
現在,我們開始編譯Recovery
make
-j4
recoveryimage
這個命令用於編譯recovery鏡像
你能使用這個命令
make
-j4
recoveryzip
用於建立一個臨時的recovery.zip刷機包在你真實的設備上測試
你編譯好的recovery可以在"your_source_directory/OUT/target/proct/device/recovery.img"目錄下找到。而.zip刷機包可以在相同目錄下的utilities文件夾下找到。
如果各項測試正常,就可以有一個成功的recovery
一旦你編譯通過了recovery,通知"koush",在Github上,他就能根據你的編譯文件發放官方版的CWM
Recovery,並使Rom
Manager提供相應的支持。
小貼士:
如果你想編譯CWM6,使用以下命令同步jellybean分支源碼
repo
init
-u
git://github.com/CyanogenMod/android.git
-b
jellybean

repo
sync
如果你改變了BoardConfig.mk文件,在編譯期間運行"make
clobber",否則你做的更改就不會生效。

㈢ 請問:android模擬器的源碼在哪裡下載

java">http://source.android.com/source/index.html

源碼需要在Linux下編譯使用!

㈣ 下載CM 源代碼出錯!

個人建議你還是放棄下載這個源碼吧。
企業想上CRM系統,找CRM軟體廠商購買,是最放心的。軟體出問題、軟體功能要二次開發都可以找軟體廠商解決,自己省時又省力了。

觀辰crm不錯,帶有OA功能的,適合中小企業的購買需求。

㈤ 榮耀的H30T10能升級到安卓5.1的CyanogenMod 12.1請問哪裡下載

到cm官網看是否支持

㈥ 標志為CM的包是什麼牌子呢

CyanogenMod(發音:sigh-AN-oh-jen-mod。簡稱CM):Cyanogen團隊是目前全球最大的Android第三方編譯團隊,其發布的Android 2.1內核CM5系列ROM被廣泛使用,促進了用戶從Android 1.6到Android 2.1版本的第三方升級。這個小組曾經先於Google公司為很多手機率先定製出穩定的Android 1.6 ROM。
CyanogenMod系列有CM4(Android 1.6)、CM5(Android 2.1)、CM6(Android 2.2)、CM7(Android 2.3)、CM8(Android 3.X【因為Google並沒有開放這一代系統的源代碼,所以跳過了開發】)、CM9(Android 4.0)、CM10(Android 4.1)、CM10.1(Android 4.2)、CM10.2(Android 4.3)、CM11 (Android 4.4)、CM12(Android 5.0)、CM12.1(Android 5.1)。
CyanogenMod 是一個免費、基於社區構建的 Android OS 的修改和改進版本。
CyanogenMod13年9月18日對外宣布,已獲得700萬美元A輪投資,希望超越黑莓和Windows Phone成為世界第三大手機操作系統。
CyanogenMod在B輪融資中獲2300萬美元投資,由安德森-霍洛維茨基金領投。騰訊、Benchmark Capital及Redpoint Ventures也參與了本輪投資。
中文名
CyanogenMod
開發者
Cyanogen(Steve Kondik)
初始版本
3.1(HTC Dream 和 HTC Magic)
支持語言
多語言
支持平台
ARM架構
授權條款
Apache 2與GPLv2
目錄
1系統
2開發
▪ 版本 6
▪ 版本 7
▪ 版本 8
▪ 版本 9
▪ 版本 10
▪ 版本 10.1
▪ 版本 10.2
▪ 版本 11
▪ 版本 12
▪ 版本 12.1
3支持機型
4特點
5CM10.X
6吉祥物
▪ bugdroid
▪ Cid
▪ 復古版
▪ Communitee
7創始人
8合作開發
▪ 與一加手機合作
▪ 與Keen Team合作

1系統編輯
CyanogenMod是一個基於開源Android系統,供某些

手機使用的二級市場固件。它提供一些在官方Android系統或手機廠商沒有提供的功能 ,例如:支持Free Lossless Audio Codec-FLAC(無損音頻壓縮編碼)音頻格式的音樂,多點觸控,從SD外置存儲器運行程序,壓縮緩存,大量APN的名單,重新啟動功能,Wi-Fi無線網路支持,藍牙,USB網路分享等。CyanogenMod也是第一個使用BFS作任務管理器的操作系統。CyanogenMod聲稱提供比官方固件版本更高性能和更可靠。
2008年9月HTC Dream手機發布後,Android社區發現其中一個可以在Android的Linux的子系統得到特權控制 "rooting"(也稱為 "root access")的方法。 這個發現, 結合了Android開源的性質,讓手機的固件可以隨意進行修改和重新安裝到手機。某些手機並不需要進行修改,如Android開發手機和Nexus One,這些用作開發用途的手機上。
現時,CyanogenMod固件是基於Android 5.0,也有大量由CyanogenMod的代碼被加入了。CyanogenMod的自定部分本來是由Cyanogen (Steve Kondik)編寫,不過加入了由xda-developers社區編寫的代碼(如已強化的主畫面, 已強化的調用程序和已強化的網頁瀏覽器)和其他的程序(如busybox)。

2開發編輯
2008年9月,

HTC Dream手機發布後,Android 社區發現其中一個可以在 Android 得到稱為「root」的最高許可權方法,這個發現結合了 Android 開源的性質。
最新的CyanogenMod版本是基於Android 5.0開發,並加入大量自製的源代碼。CyanogenMod的源代碼本來是由 Cyanogen(本名Steve Kondik)編寫,後來也加入了xda-developers社區強化過的主畫面、調用程序和網頁瀏覽器,另外也加入 BusyBox…… 等其它的程序。
CyanogenMod Updater 程序會提醒用戶有新版本的 CyanogenMod,且也能順便協助安裝到他們的手機里。用戶可以在Google play下載該程序。但從5.0版本起,這個程序就不運作了,只能通過 Rom Manager 查找固件更新。
原本CyanogenMod包含Google的一些App(如Gmail及Android market),但 Google 於2009年9月發出律師信要求該團隊不得再散布CyanogenMod,此舉引起部份CyanogenMod愛好者的反彈,認為Google公司違反其「不作惡」的經營口號,CyanogenMod 一度暫停運作,此事件也引起一些媒體的注意而加以報道。在兩方協調之後,CyanogenMod恢復開發工作,但不能再包含Google的App,僅提供鏈接由用戶自行下載安裝。
CyanogenMod的創辦人Steve Kondik 被Samsung招攬加入手機軟體開發的工作,而Sony更提供手機給開發團隊。
版本 6
當時Steve Kondik所發布的Cyanogenmod 6基於Android 2.2開發,代號為"Froyo",支持的機型有 Google Nexus one,HTC Dream,HTC Magic,Motorola Droid,HTC aria,HTC Legend,HTC Desire,HTC Evo 4G,HTC Hero,HTC Wildfire,HTC Incredible,和T-Mobile my Touch 3G slide,首個測試版本發布於2010年7月11日,而穩定版本則發布於2010年8月28日。
版本 7
CyanogenMod團隊所開發的CyanogenMod 7是基於Android 2.3 Gingerbread固件源碼。其中CyanogenMod 7的自定義部份是由Steve Kondik所編寫,但有部份由論壇xda-developers的開發者協助,例如改良後的啟動器,調用畫面,和瀏覽器。
版本 8
原本計劃CyanogenMod 8將會基於Android 3.0 Honeycomb開發,由於Google沒有開源Android 3.0的源碼,計劃拖延至Google發布Android 4.0,CyanogenMod團隊表示會跳過CyanogenMod 8的開發而直接開發基於Android 4.0的CyanogenMod 9。
版本 9
CyanogenMod 9是基於Google的Android 4.0 Ice Cream Sandwich,Steve Kondik和他的CyanogenMod團隊宣布准備開發。在2011年11月Google發布Android 4.0.1的源碼後幾天,穩定版CM 9.0.0已經發布。
版本 10
CyanogenMod 10是基於Google的Android 4.1 Jelly Bean開發。在2012年11月Google發布Android 4.2的源碼之前,穩定版CM 10.0.0已經發布。
版本 10.1
CyanogenMod 10.1是基於Google的Android 4.2 Jelly Bean開發。自從Android 4.2果凍豆源碼發布之後,CyanogenMod團隊就開始將對應的CyanogenMod 10.1作為了開發的重點,而今,該團隊已經為谷歌四兒子Nexus 4帶來了首個CM 10.1的ROM。對於無緣官方Android 4.2的用戶,不妨多期待一下CM10.1版的果凍豆了。
2013年01月23日,Milestone 1 版 CyanogenMod 10.1 登陸部分 Nexus 及三星設備。被稱為「基本穩定」(mostly stable)的 Milestone 1 版本已經來了,想用這個版本的話對裝置還是有一定要求的,暫時來看只有大多數 Nexus設備、三星Galaxy S系列手機以及Galaxy Tab 2 系列平板可以安裝。當想要完美穩定版本的朋友可能還需要再耐心等一等,不過 Milestone 1 應付日常使用應該是沒有什麼問題。[1]
版本 10.2
CyanogenMod 10.2是基於Google的Android 4.3 Jelly Bean開發。經過一段時間的Alpha內測之後,CyanogenMod 10.2已經完成了對第一批設備的初步適配,放出了基本可以正常使用的Nightly版本。按照慣例,Nightly版本仍是測試性質的,不推薦作為日常使用,但已經基本上沒有太大問題,可以嘗嘗鮮。如果允許的話,這種版本每天都會更新一次。[2]
版本 11
2013年11月6日,Cyanogen團隊宣布開始著手基於Android 4.4KitKat的CyanogenMod 11開發工作。
版本 12
經過長時間的跳票後,Android的第三方團隊Cyanogen正式發布了基於Android 5.0 Lollipop的Cyanogen 12固件。其中與Cyanogen團隊有深度合作的中國廠商一加的OnePlus率先獲得Cyanogen 12的更新,而同樣與Cyanogen有合作的印度廠商Micromax推出的YU系列Yureka手機將緊隨其後獲得獲得Cyanogen 12的更新。
CyanogenMod 12的固件基於Android 5.0.1開發,在系統界面上將會有大的變革,採用Material Design設計的標准。同時Cyanogen還加入了自己的App Themer功能,允許用戶對包括第三方應用在內從系統層級更換風格。為用戶提供更多的個性化界面選擇。[3]
版本 12.1
CyanogenMod 12.1僅有Nightly版,也就是測試版,可能還存在一些不穩定的要素。CM 12.1基於Android5.1,保持原生界面風格,並加入了CM的一些特色功能。之前有報道稱CM已經和微軟達成合作,微軟應用和服務將進駐CM ROM,不過這次CM 12.1 Nightly版,並沒有預裝微軟應用和服務。[4]

3支持機型編輯
截止至2014年6月14日 CM所支持機型

HTC系列

HTC One X

HTC Desire S

HTC Incredible S

HTC Incredible

HTC Desire GSM

HTC EVO 3D

T-Mobile G2 (Desire Z)

HTC Desire CDMA

HTC Desire HD (Inspire)

HTC Hero GSM

HTC Magic (Mytouch)

HTC Hero CDMA

HTC Legend

T-Mobile myTouch 4G

T-Mobile myTouch Slide

HTC Wildfire

Sprint EVO

HTC Click (Tattoo)

HTC Wildfire S

HTC One XL

HTC EVO 4G HTC EVO Shift HTC Amaze 4G

SONY系列

Xperia Arc

Xperia Neo

Xperia Mini

Xperia Mini Pro

Xperia X8

Xperia Play

Xperia Ray

Xperia X10 Mini

Xperia X10

Xperia X10 Mini Pro

Xperia S

Xperia Z

Xpeira ZR Xperia V Xperia Z Ultra

GOOGLE系列

Google Nexus One

Google Nexus S

Google Nexus 4

Google Nexus 10

Galaxy Nexus (GSM) Google Nexus 7 Google Nexus 7 二代 Google Nexus 5

MOTO系列

Motorola Droid

Motorola CliqXT

Motorola Defy
Motorola MB300(backfli)

Motorola Droid RAZR HD Motorola Droid RAZR M Motorola Photon Q
Motorola Razr

Motorola Atrix 1/2/3/HD Motorola Xoom Moto G

SAMSUNG系列

Samsung Galaxy S

Samsung Galaxy SI

Samsung Galaxy SIII

Samsung Galaxy S4

Samsung Galaxy R Samsung Galaxy Note II
Samsung 9100G
Samsung Galaxy S Relay 4G

Samsung Galaxy S Advance

LG系列

LG Optimus 2x

LG Optimus Black P970

LG Optimus One

LG Optimus GT540

LG SU640 LG P880 Optimus 4X HD LG G2 LG P930
LG Optimus L7 LG Optimus 3D Max LG Optimus L9 LG Optimus 4X HD
LG Thrill 4G

魅族系列

MeiZu M9

MeiZu MX2


其它

AT&T Aria

ZTE Blade

HUAWEI Honor

z71 Variants

Geeksphone One

Advent Vega

Viewsonic G-Tablet

B&N Nook Color

ZTE N909 一加 oneplus A0001 Smartisan T1

華為系列

C8812(Ascend)
U8860 U8150 U8160

OPPO系列
x909 (FIND5)
小米系列
MI2/2S (aries) MI3(cancro)

4特點編輯
高度優化的內核,帶有很多額外模塊改進的RAM
使用智能啟動和優化安裝選項
包含E2FSProgs可檢查並轉換Ext文件系統
自動安裝Apps2SD
多個分屏幕
自動適用方向
關機和重啟依然具有干凈的文件系統
不需要危險的SPL操作
包含大量APN列表
CPU工作頻率
設置程序的大量改進
包括額外的分區
由cytown改進電話應用
還有很多

5CM10.X編輯
2013年7月26日消息:CyanogenMod團隊一向以效率著稱,當然除了速度快之外CM團隊在ROM研發的質量上也一如既往的保持高水準。Android 4.3於昨日正式發布,CM團隊表示已經著手基於Android 4.3的CM10.2研發。有多款機型的CM10.2 ROM已經開始開發了,預計在不久以後就會和大家正式見面。[5]
在此之前,CM團隊曾有CM7(Android 2.3)、CM9(Android 4.0)、CM10(Android 4.1)等幾個版本發布,幾乎每一次Android大版本更新,CyanogenMod團隊都會推出相應的CM系列ROM。而Android 4.2由於相對於4.1來說更新幅度不大,所以其命名成為了CM10.1,而不是CM11。
谷歌在今天凌晨正式發布了Android 4.3,相對於Android 4.2來說升級的地方也並不多,因此CM團隊決定基於Android 4.3的CM系統命名為CM10.2。[5]

6吉祥物編輯
bugdroid
早期CyanogenMod的吉祥物是踏著滑板的Android公仔"bugdroid"。
Cid
2012年4月4日,
吉祥物
CyanogenMod以「需要一個看起來更成熟的吉祥物」為由,推出了名為"Cid"的新吉祥物取代"bugdroid"。其名"Cid"是"CyanogenMod ID"的縮寫。
復古版
CyanogenMod吉祥物雖然應該屬於退伍行列,但是用戶們對它的鍾愛不減。如今,它被放進壁紙中,喚醒曾經的美好回憶。
Communitee
Communitee是一個「多頭野獸」。用戶們在上面提出自己的想法,為某件事情投票,選擇一種Frendened-up概念。用戶們信任它,依賴它。

7創始人編輯
成立於2009年的著名Android系統修改小組CyanogenMod今天宣布加入三星電子旗下的三星移動(samsungmobile),其創始人Steve Kondik已經作為一個軟體工程師入職三星。CyanogenMod是最流行的Android自製固件提供方,它的加入將給三星移動的Android體驗帶來技術支撐。Steve Kondik表示,他的加入會讓Android變的更美好。
繼Google宣布收購摩托羅拉移動(motorola mobility),而讓Android平台的廠商格局發生了深遠的改變,不過Google隨後表示將繼續保持Android系統的開放,但這並不足以讓HTC、三星等廠商打消疑慮,但是,安卓魅力實在太大,致使三星也不得不拋棄自己的bada系統,專心致志的去做安卓手機

8合作開發編輯
與一加手機合作
2013年11月13日消息,全球知名安卓定製團隊CM或將與一加科技(OnePlus)推出安卓智能手機,CyanogenMod創始人Steve Kondik及OPPO前副總經理劉作虎已確認了相關消息。[6]
被譽為安卓定製之父的Steve Kondik在和劉作虎做一件可能會改變Android手機世界的事情,從零開始打造一部擁有最好用軟體和最頂級硬體配置的安卓手機。
Steve Kondik還表示自己剛剛參觀了工廠,與一加方面只在洽談涉及硬體層面的合作。
CyanogenMod OS是全球第一家基於安卓原生深度優化定製的OS;包括MIUI、錘子ROM等知名安卓ROM都是在CyanogenMod OS基礎上的二次開發或使用了部分代碼,在年初羅永浩那場聲勢浩大的錘子ROM發布會上,就曾高調向Steve Kondik致敬。
但CyanogenMod團隊在商業化的腳步上並不領先,在中國的小米憑藉手機產品成為百億元估值的手機公司時,CM團隊卻一直以興趣和開源的方式存在。直到2013年4月份,Steve Kondik才以公司形態成立了Cyanogen Inc,並獲得了第一筆750萬美元的融資。
Steve Kondik在成立公司前曾在三星任職,此前曾有消息稱未來CyanogenMod會與三星深度合作,但在Steve Kondik出席2013年9月23日的OPPO N1發布會後,外界普遍認為一加將是CM未來的合作對象。[7]
2015年4月29日消息,在北京召開的全球移動互聯網大會上,Cyanogen公司CEO KirkMcMaster與創始人Steve Kondik表示,將會和中國手機廠商一加終止合作。[8]
與Keen Team合作
2014年1月15日消息,美國第三方Android ROM團隊CyanogenMod(簡稱CM)近日與國內碁震研究安全團隊(Keen Team)達成合作,Keen Team將對CM系統進行安全性能的改進。[9]
CM創始人兼CTO Steve表示,CM當前的重點是提供安全性,從操作系統層面提高手機的安全度。為此CM在中國找到了另一家合作夥伴Keen Team,該團隊主要成員來自微軟,在2013年11月的Pwn2Own安全大賽上,該團隊通過Safari漏洞在30秒內攻破了iOS 7.0.3。
Keen Team負責人王琦介紹,在合作後Keen將為CM系統提供三個方面的安全支持:1、檢測漏洞,加固系統,2、在CM官方應用商店進行APP上架安全預檢,第三方應用商店下載的APP在安裝後進行安全檢測,3、對移動支付相關環節進行針對性加固。

Android

開發

▪ Android 軟體開發工具包 ▪ Apache Ant ▪ Dalvik ▪ Developer Challenge
▪ Eclipse ▪ Google Code ▪ Google App Inventor ▪ Google I/O
▪ Bionic ▪ APK ▪ Roboto ▪ 快速啟動

使用者介面

▪ HTC Sense ▪ Motorola Motoblur ▪ Samsung TouchWiz ▪ Sony UXP Experience

應用程式

▪ 地球 ▪ Goggles ▪ Gmail ▪ 地圖
▪ 星空 ▪ Talk ▪ 翻譯 ▪ Voice
▪ YouTube

服務

▪ Google Play ▪ Google搜索 ▪ Android雲端推送(C2DM)

Google Nexus

▪ Nexus One ▪ Nexus S ▪ Galaxy Nexus ▪ Nexus 7
▪ Nexus Q

第三方固件

▪ CyanogenMod ▪ MIUI ▪ InsertCoin

衍生平台

▪ MIUI ▪ OPhone ▪ 網路易平台 ▪ Replicant
▪ Le OS ▪ 阿里雲OS ▪ Flyme OS

列表

▪ Android相關主題 ▪ Android裝置列表 ▪ Android版本歷史 ▪ Android開源應用

其他

▪ Root機

㈦ 如何移植android2.1源代碼到自己的手機上

一,准備好android2.1源碼編譯環境以及手機USB調試環境。
二,將手機上硬體驅動程序以及相關的配置文件通過ADB命令保存好。
三,針對不同的手機機型,製作相應的vendor配置文件。
四,編譯源碼。
五,通過手機提供的bootloader刷機或者直接以recovery的方式更新ROM。
在以上五個步驟中,其中最難處理的便是第2個步驟,這個步驟需要熟悉每個手機機型的硬體參數,並且能夠在手機上找到相關的驅動程序以及了解他們如何配置。而CyanogenMod團隊公布的源碼當中,己經將相關的工作做好了,編譯源碼之前僅僅需要執行相應的shell命令,便可順利的下載相應的手機驅動程序以及配置文件。
下面是移植步驟,供參考:
一,首先需要下載CyanogenMod 5.0.8的源碼:
$ mkdir android-cm5
$ cd android-cm5
$ repo init -u git://github.com/CyanogenMod/android.git -b eclair
$ repo sync
二,下載CyanogenMod需要的一些共同文件,如果想最終版本中不需要這些APK,也可以通過配置/vendor/cyanogen/cyanogen.mk文件將這些需要的APK COPY命令注釋掉。
$ cd vendor/cyanogen/
$ ./get-rommanager #下載一個RomManager.apk包,主要是刷ROM用的。我沒用過。
$ ./get-google-files #其它的一些google開發的android apk包,我也沒有用過!
三,下載針對htc legend(g6)的vendor.
$ cd ../../vendor/htc
$ git clone git://github.com/aleho/android_vendor_htc_legend.git #下載針對htc legend(g6)手機的vendor,裡麵包括相關的配置參數,以及從手機上下載驅動程序的SHELL命令。
$ mv android_vendor_htc_legend/ legend
$ cd legend
$ ./extract-files.sh #確保這個命令執行將你的手機連接好電腦並且開了手機USB調試,adb命令可以連接手機。這個過程主要是下載htc legend(g6)驅動程序以及配置文件。
四,針對CyanogenMod 5.0.8源碼打上htc legend(g6)的補丁包,這個補丁包主要是wifi和觸摸屏的,如果不做,觸摸屏將無法觸摸以及wifi功能無法啟動。

㈧ 大牛們是怎麼閱讀 Android 系統源碼的

如果只是想看看一些常用類的實現, 在Android包管理器里把源碼下載下來, 隨便一個IDE配好Source Code的path看就行.
但如果想深入的了解Android系統, 那麼可以看下我的一些簡單的總結.

知識
Java
Java是AOSP的主要語言之一. 沒得說, 必需熟練掌握.
熟練的Android App開發
Linux
Android基於Linux的, 並且AOSP的推薦編譯環境是Ubuntu 12.04. 所以熟練的使用並了解Linux這個系統是必不可少的. 如果你想了解偏底層的代碼, 那麼必需了解基本的Linux環境下的程序開發. 如果再深入到驅動層, 那麼Kernel相關的知識也要具備.
Make
AOSP使用Make系統進行編譯. 了解基本的Makefile編寫會讓你更清晰了解AOSP這個龐大的項目是如何構建起來的.
Git
AOSP使用git+repo進行源碼管理. 這應該是程序員必備技能吧.
C++
Android系統的一些性能敏感模塊及第三方庫是用C++實現的, 比如: Input系統, Chromium項目(WebView的底層實現).

硬體
流暢的國際網路
AOSP代碼下載需要你擁有一個流暢的國際網路. 如果在下載代碼這一步就失去耐心的話, 那你肯定沒有耐心去看那亂糟糟的AOSP代碼. 另外, 好程序員應該都會需要一個流暢的Google.
一台運行Ubuntu 12.04的PC.
如果只是閱讀源碼而不做太多修改的話, 其實不需要太高的配置.
一台Nexus設備
AOSP項目默認只支持Nexus系列設備. 沒有也沒關系, 你依然可以讀代碼. 但如果你想在大牛之路走的更遠, 還是改改代碼, 然後刷機調試看看吧.
高品質USB線
要刷機時線壞了, 沒有更窩心的事兒了.
軟體
Ubuntu 12.04
官方推薦, 沒得選.
Oracle Java 1.6
注意不要用OpenJDK. 這是個坑, 官方文檔雖然有寫, 但還是單獨提一下.
安裝:
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java6-installer
sudo apt-get install oracle-java6-set-default

Eclipse
估計會有不少人吐槽, 為什麼要用這個老古董. 其實原因很簡單, 合適. 剛開始搞AOSP時, 為了找到效率最優的工具, 我嘗試過Eclipse, IntelliJ IDEA, Vim+Ctags, Sublime Text+Ctags. 最終結果還是Eclipse. 主要優點有:
有語法分析 (快速准確的類, 方法跳轉).
支持C++ (IntelliJ的C++支持做的太慢了).
嵌入了DDMS, View Hierarchy等調試工具.
為了提高效率, 花5分鍾背下常用快捷鍵非常非常值得.
調整好你的classpath, 不要導入無用的代碼. 因為AOSP項目代碼實在是太多了. 當你還不需要看C++代碼時, 不要為項目添加C++支持, 建索引過程會讓你崩潰.
Intellij IDEA
開發App必備. 當你要調試系統的某個功能是, 常常需要迅速寫出一個調試用App, 這個時候老舊的Eclipse就不好用了. Itellij IDEA的xml自動補全非常給力.
巨人的肩膀

這個一定要先讀. 項目介紹, 代碼下載, 環境搭建, 刷機方法, Eclipse配置都在這里. 這是一切的基礎.

這個其實是給App開發者看的. 但是裡面也有不少關於系統機制的介紹, 值得細讀.

此老羅非彼老羅. 羅升陽老師的博客非常有營養, 基本可以作為指引你開始閱讀AOSP源碼的教程. 你可以按照博客的時間順序一篇篇挑需要的看.但這個系列的博客有些問題:
早期的博客是基於舊版本的Android;
大量的代碼流程追蹤. 讀文章時你一定要清楚你在看的東西在整個系統處於什麼樣的位置.

鄧凡平老師也是為Android大牛, 博客同樣很有營養. 但是不像羅升陽老師的那麼系統. 更多的是一些技術點的深入探討.

Android官方Issue列表. 我在開發過程中發現過一些奇怪的bug, 最後發現這里基本都有記錄. 當然你可以提一些新的, 有沒有人改就是另外一回事了.

一定要能流暢的使用這個工具. 大量的相關知識是沒有人系統的總結的, 你需要自己搞定.
其它
代碼組織
AOSP的編譯單元不是和git項目一一對應的, 而是和Android.mk文件一一對應的. 善用mmm命令進行模塊編譯將節省你大量的時間.
Binder
這是Android最基礎的進程間通訊. 在Application和System services之間大量使用. 你不僅要知道AIDL如何使用, 也要知道如何手寫Binder介面. 這對你理解Android的Application和System services如何交互有非常重要的作用. Binder如何實現的倒不必著急看.
HAL
除非你對硬體特別感興趣或者想去方案公司上班, 否則別花太多時間在這一層.
CyanogenMod
這是一個基於AOSP的第三方Rom. 從這個項目的wiki里你能學到很多AOSP官方沒有告訴你的東西. 比如如何支持Nexus以外的設備.
DIA
這是一個Linux下畫UML的工具, 能夠幫你梳理看過的代碼.
XDA

熱點內容
杭州地鐵wifi密碼是多少 發布:2024-04-26 21:32:45 瀏覽:319
重裝系統源碼 發布:2024-04-26 21:32:44 瀏覽:274
國外大叔解壓視頻 發布:2024-04-26 20:44:00 瀏覽:227
存儲念第幾音 發布:2024-04-26 20:33:35 瀏覽:250
衡陽dns的伺服器地址是多少 發布:2024-04-26 20:32:26 瀏覽:269
我的世界空島伺服器青金石 發布:2024-04-26 20:18:03 瀏覽:650
微信小程序演算法 發布:2024-04-26 20:03:36 瀏覽:975
易語言模板不能靜態編譯 發布:2024-04-26 19:59:02 瀏覽:353
sql注釋語句 發布:2024-04-26 19:58:48 瀏覽:654
sql存儲過程out 發布:2024-04-26 19:33:15 瀏覽:415