1. 給android手機刷機的「cm固件」是什麼
這個是我在網上收來的材料 上面很詳細的說明CM固件的由來 希望對你有用
CM系列固是網友們非常喜歡的安卓手機固件,但是CM與谷歌的Android又是什麼關系呢。
眾所周知,谷歌的Android是開源的,最早共享出源代碼的時候,Android系統版本才發展到2.1與2.2的過渡時期,由於2.2版本中加入了JIT技術,可以大大提高安卓手機的運行效率,因此廣大機友都對其給予厚望,但是谷歌共享的源代碼僅能用於Nexus One這一款手機上,並不適合所有機型。因此CM應運而生。
CM的全稱是CyanogenMod,他是一個Android愛好者組成的團隊,他們通過Google共享的Android源代碼,經過內核部分的修改和GPL協議開發出來了CM系列固件。CyanogenMod官方開發小組受於人數的制約,僅開發部分主流機型的CM系列固件,不過CyanogenMod官方開設了論壇,民間的高手也參與進來開發和維護CM系列固件,不斷加入更多的機型支持,和CM系列固件維護。包括國內網友修改優化的各種固件,大多都是從CM固件中修改而來的。
如果沒有CM團隊,那麼或許眾多老款Android手機都只能停留在Android 1.6或2.1版本,很多全新功能都體驗不到。也可以這樣說,沒有CyanogenMod
的全稱是CyanogenMod,是一個基於開源Android系統,供某些手機使用的二級市場固件。它提供一些在官方Android系統或手機廠商沒有提供的功能 ,例如:支持Free Lossless Audio Codec - FLAC (無損音頻壓縮編碼)音頻格式的音樂,多點觸控, 從SD外置存儲器運行程序,壓縮緩存,大量APN的名單,重新啟動功能,Wi-Fi無線網路支持,藍牙,USB網路分享等。CyanogenMod也是第一個使用BFS作任務管理器的操作系統。也許上面的解釋太過專業,簡單來說,CM安卓系統就是一款基於安卓系統,進行修改定製的第三方系統。同時,CyanogenMod聲稱提供比官方固件版本更高性能和更可靠的系統固件。
根據CM系統的代號分類為:
CM5是Android 2.1的ROM
CM6是Android 2.2的ROM
CM7是Android 2.3的ROM
CM8是Android3.0的ROM
CM9是Android 4.0的ROM
CM10是Android 4.1的ROM
Cyanogen團隊是目前全球最大的Android第三方編譯團隊,由於該團隊曾先於google公司為很多手機,率先定製出穩定的1.6ROM而名聲大噪。CM的ROM以開源、開放、穩定著稱,目前仍有許多刷機發燒友使用其第三方定製ROM。
固件
目前(2012年)固件(firmware)一般存儲於設備中的電可擦除只讀存儲器EEPROM(Electrically Erasable Programmable ROM)或FLASH晶元中,一般可由用戶通過特定的刷新程序進行升級的程序。一般來說,擔任著一個數碼產品最基礎、最底層工作的軟體才可以稱之為固件,比如計算機主板上的基本輸入/輸出系統BIOS(Basic Input/output System),在以前其實更多的專業人士叫它固件。
通常這些硬體內所保存的程序是無法被用戶直接讀出或修改的。在以前,一般情況下是沒有必要對固件進行升級操作的,即使在固件內發現了嚴重的Bug也必須由專業人員帶著寫好程序的晶元把原來機器上的更換下來。早期固件晶元一般採用了ROM設計,它的Firmware代碼是在生產過程中固化的,用任何手段都無法修改。
隨著技術的不斷發展,修改固件以適應不斷更新的硬體環境成了用戶們的迫切要求,所以,可重復寫入的可編程可擦除只讀存儲器EPROM(Erasable Programmable ROM),EEPROM和flash出現了。這些晶元是可以重復刷寫的,讓固件得以修改和升級。
2. 各位安卓反編譯大神,為什麼我反編譯框架成功,而回編譯失敗呢
文件id值沒有在public.xml中設定。要麼給相應文件添加id值(注意添加規則),要麼刪掉public.xml文件,
3. android 編譯伺服器大概需要什麼配置 5
工欲善其事,必先利其器」,要想提高團隊整體的開發效率,盡可能的提前完成開發任務,必須要配備一套配置給力的開發設備。源碼編譯伺服器硬體配置的高低,直接影響著系統固件升級和ROM版本發布的速度和效率。
由於目前Google發布的最新版本的Android系統源碼體積越來越大,因此,越是定製高版本的系統,對編譯伺服器的硬體配置要求就越高,這里根據調研,給出目前Android
6.0及以下版本源碼定製開發的基本配置,供大家參考。
首先進行一波企業級android源碼編譯伺服器的推薦,這類推薦網上絕無僅有,這還是我進行了很久的調研,詢問很多朋友【其中包括不乏6年以上系統開發的大牛,也有之前公司的主管等】,也查了很多資料才挑選出來,提出需求後讓上級審批,目前上一級已經認可比審批,等待領導簽字。給力。
詳細
4. 如何自己編譯android系統並製作刷機包
android系統製作刷機包方法:
【一】:下載安裝最新版ROM助手(市場中有很多類似的製作工具,關鍵要求操作簡單,功能強大),安裝程序非常簡單,只需在一隻蘑菇首頁內直接下載,並解壓到自己的電腦安裝即可。
【二】:如果已經下載了與機型匹配的ROM刷機包,那麼現在可以直接打開ROM助手了,接下來繪制專屬個性的完美刷機包就從這里開始吧。
【三】:打開軟體後,它會自動升級到最新版本,另外打開主界面後,會直觀簡明的顯示出它的所有功能,例如:性能優化,系統精簡,預裝APK,簽名打包等等。提醒大家,不要貪心哦,要根據自己的需求點擊需要操作的功能,如系統精簡,然後進入操作界面,所有功能全部修改一遍也無妨,反正都是一鍵操作,省時省力。
5. 安卓系統。用apktool導入框架,反編譯SystemUI,回編譯卻顯示一大片的error,即使是
你的systemui.apk是不是曾經被人反編譯過的,還是你原先不小心刪了apk裡面的某個圖片文件,再或者這個apk不能反編譯吧
6. android 中編譯版本,最小版本,目標版本都有什麼區別
SDK 最低版本
以最低版本設置值為標准,操作系統會拒絕將應用安裝在系統版本低於標準的設備上。
SDK 目標版本
目標版本的設定值告知Android:應用是為哪個API級別設計的。大多數情況下,目標版本即最新發布的Android版本。
SDK 編譯版本
SDK最低版本和目標版本會通知給操作系統,而SDK編譯版本只是你和編譯器之間的私有信息。
Android的特色功能是通過SDK中的類和方法展現的。在編譯代碼時, SDK編譯版本(即編譯目標) 指定具體要使用的系統版本。 Android Studio在尋找類包導入語句中的類和方法時,編譯目標確定具體的基準系統版本。
7. NDK版本與Android固件要求對應表
NDK版本與Android固件要求對應表
對於Android NDK版本來說,編譯出來的so文件對應運行的Android固件最小版本是有一定要求的,高版本的NDK編譯出的.so文件由於包含了一些新的特性,新特性可能在低版本的Android固件上無法運行,目前最新的對著表Android開發網總結如下
API Level 1 --- Android 1.0 不支持NDK
API Level 2 --- Android 1.1 不支持NDK
API Level 3 --- Android 1.5 NDK 1
API Level 4 --- Android 1.6 NDK 2
API Level 5 --- Android 2.0
API Level 6 --- Android 2.0.1
API Level 7 --- Android 2.1 NDK 3
API Level 8 --- Android 2.2 NDK 4
API Level 9 --- Android 2.3 NDK 5
API Level 10 --- Android 2.3.3
API Level 11 --- Android 3.0
API Level 12 --- Android 3.1 NDK 6
API Level 13 --- Android 3.2
API Level 14 --- Android 4.0.1 NDK 7
API Level 15 --- Android 4.0.3
從上面來看,在Android關鍵版本更新上,NDK加入了很多新的特性,從簡單的C/C++知道到兼容STL,再到硬體擴展等,使得Android更開放,更強大。
8. 安卓反編譯出來的代碼如何修改重新生成APK
反編譯步驟: