• April 28, 2024

【手機分驅】手機分區到底什麼意思 |20分鐘輕鬆解決安卓手機分區問題乾貨篇 |android手機各大分區詳解 |

是用來解決系統儲存問題,能安裝多軟件。(官方系統儲存3.0多G,不會影響ota,於電腦分盤)

建議備份:圖片(備份目錄DCIM\或其他軟件目錄中),歌曲,軟件數據(可以鈦備份進行備份,備份後包括安裝包和數據,備份目錄TitaniumBackup),系統設置及其他帳號之類(可以MIUI內置備份,備份目錄MIUI\)所有備份資料通過文件管理中遠程管理傳輸到電腦中去。上圖:

此教程分三步,所需工具:

手機、usb數據線、線刷包、windows7(7及以上可以)電腦、miflash、DiskGenius(推薦4.5及以上,免費版可以,可以百度下載) 是囉嗦下分區思路。理解辦

1、fastboot 和數據(所有)清除,讓手機只有硬件端口號。

2、MiFlash 刷入系統(只要是小米官方線刷系統,但線刷包要為5.4.24之前版本,因為5.4.24開始,官方合併分區)。

3、幾百秒刷系統(其實只有寫入數據)手機不要動,打開DiskGenius硬盤精靈分區。

於第一步清除了fastboot 和數據,第二步MiFlash刷系統,其實只是寫入數據,手機會啓

整個過程只需重啓兩次手機到fastboot(開始一次,結束一次),拔下並插入一次,電腦不用啓~完事啦。請保持20%電量(雖然我整個過程中100%沒掉,保險啊)

手機數據線電腦,【管理員身份】運行 【開始哦】(如果無法fastboot話,不用管理員身份打開,直接雙擊)

完成後會提示如上圖提示,請拔掉電池和數據線,裝上電池連電腦(此時手機會黑屏,只要電腦搜到驅動行),此後直到分區完成前請不要手賤拔掉數據線。此時跳到原帖。你可以看原帖,來分區,好看我,我直奔主題,簡潔明瞭。

此次操作沒有刷V5 或者6 是4.4.25V5開發版(不要安卓5.0miui系統),這個刷入系統只要是官方線刷系統可以,那個版本無所謂,區別!!!不過這寫入時間有點長,請等待提示操作完成!!!那麼第二步完成啦。

分區26 是內部SD卡 storage(軟件數據,音樂其他數據)

只要你搞錯分區,只管刪,不要看提示!

25、26分區刪掉 (刪除25後 26變25啦,刪掉行)

我們拿到一款手機,第一件事應該下電源鍵開機,那麼開機到進入到桌面程序這中間發生了些什麼呢,我們下面這張化了手機結構圖開始:

注意:該結構圖並反映手機實際分區順序和位置,只是一個邏輯結構圖。

大家可以把手機ROM存儲類比我們電腦上硬盤,這個硬盤分成了幾個分區:bootloader分區,boot分區,system分區。後面我們會介紹各個分區用途。所謂刷機我們可以理解成軟件安裝在手機某些分區中,類似於我們電腦上安裝Windows系統。

下電源鍵手機上電啓動後,bootloader分區中一個地址開始執行指令,如圖所示,bootloader分區分成兩個部分,叫做primary bootloader和secondary stage bootloader。Primary bootloader主要執行硬件檢測,確保硬件能工作後secondary stage bootloader拷貝到內存(RAM)開始執行。Secondary stage bootloader會進行一些硬件初始化工作,獲取內存大小信息,然後用户按鍵進入到某種啓動模式。比如説大家所熟知通過電源鍵和其它一些鍵組合,可以進入到recovery,fastboot或者選擇啓動模式啓動界面。我們論壇上看到bootloader指secondary stage bootloader。不過我們需要關心多細節,可以理解bootloader一段啓動代碼,用户鍵有選擇進入某種啓動模式。

fastboot模式:fastboot是android定義一種刷機協議,用户可以通過fastboot命令行工具來進行刷機。比如説fastboot flash boot boot.img這個命令boot.img內容刷寫到boot分區中。手機廠商直接提供fastboot模式刷機,而是顯示他們牛B之處,總是會提供自己專有刷機工具和刷機方法。比如説三星Odin,摩托RSD,華為粉屏。但是其本質是,是軟件直接flash到各個分區中。

recovery模式:recovery是android定義一個標準刷機協議。進入recovery模式時,secondary stage bootloaderrecovery分區開始啓動,recovery分區實際上是一個Linux系統,當內核啓動完畢後,開始執行第一個程序init(init程序是Linux系統所有程序老祖宗)。init會啓動一個叫做recovery程序(recovery模式名稱由此而來)。通過recovery程序,用户可以執行清除數據,安裝刷機包操作。手機廠商都提供一個recovery刷機,而大名鼎鼎CWM Recovery一個加入了很多增強功能recovery,要想用上CWM Recovery前提是recovery分區可以刷寫。大家論壇上看到解鎖bootloader,指解鎖recovery或fastboot,允許刷寫recovery分區,這樣大家可以上喜愛CWM Recovery了。

手機普通CPU芯片以外,有MODEM處理器芯片。該芯片功能實現手機必需通信功能,大家刷RADIO刷寫modem分區。

我們只是下電源鍵開機時,會進入啓動模式。Secondary stage bootloader會boot分區開始啓動。Boot分區格式是,是一個頭部,然後是Linux內核,後是用作文件系統ramdisk。

每個機型刷機包中會有一個boot.img文件,這boot分區鏡像文件。

文件系統中有一個配置文件,叫default.prop,該文件內容為:

文件中每一行某個屬性賦值,後續文章中我們會談到屬性。這裏面大家需要注意兩個屬性:ro.secure和ro.debuggable。如果ro.secure=0允許我們運行adb root命令。下一篇我們會詳細介紹adb,這是我們做ROM移植利器。大家説得內核ROOT指ro.secure=0。ROOT權限只是手機上有一個名為授權管理程序(Superuser.apk)可以授予程序root用户權限。ro.deguggable=1允許調試系統APP。

延伸閱讀…

20分鐘輕鬆解決安卓手機分區問題乾貨篇

android手機各大分區詳解

init程序讀取啓動腳本,執行腳本中指定動作和命令,腳本中一部分是運行system分區程序,下一節我們來看看system分區結構。

講system分區之前,我們下面這張Android軟件系統架構圖。

上到下為:
核心應用層:這一層大家接觸各種各樣系統自帶應用,比如聯繫人,電話,音樂。應用層下開發人員接觸。

框架層:這一層是Android系統核心,它提供了整個Android系統運作機制,像窗口管理,程序安裝包管理,開發人員接觸Activity, Service, broadcast。

JNI層:JNI層是Java程序和底層操作系統通信一個機制,它使得Java代碼可以調用C/C++代碼來訪問底層操作系統API。

Dalvik虛擬機:Android開發使用Java語言,應用程序Java代碼會編譯成dalvik虛擬機字節碼,這些字節碼由dalvik虛擬機解釋執行。

本地庫:本地庫是C/C++語言開發,直接編譯成相應CPU機器碼,這其中包含標準C庫,用以繪製圖形skia庫,瀏覽器核心引擎webkit。

HAL:硬件抽象層,和各個廠家硬件工作,Android定義了一套硬件接口,比如説了使用,廠家相機驅動提供接口方法。這樣使得上層代碼可以獨立於硬件運行。

廠家適配層:本來Android定義HAL層是直接和廠家提供設備驅動打交道,但是目前廠家不想開源HAL部分代碼,因此很多廠家提供了一個我稱廠家適配層代碼,這樣HAL層接口實現只是一個廠家適配層接口函數調用。

內核:這一層大家熟悉Linux內核,內核中包含有各種硬件驅動,這些驅動手機廠商手機是。Linux內核是支持驅動模塊化機制,簡單的説允許用户動態加載或者卸載某個硬件驅動,但是目前,手機廠商提供WIFI驅動加載外,其它驅動是和內核綁定一起。

這張軟件結構圖,內核是放在boot分區外,其它層代碼是system分區中。

延伸閱讀…

手機分區到底什麼意思

簡單認識安卓手機各個分區(Android刷機必看)

下面結合這張圖來介紹system分區主要目錄內容:
system/app: app目錄下存放是核心應用,大家熟知系統APP,這些系統自帶程序是不能卸載,要通過一些方式才能刪除(大家熟悉一種方法是RE文件管理器)。

system/lib: lib目錄下存放是組成JNI層,Dalvik虛擬機,本地庫,HAL層和廠家適配層所有動態鏈接庫(.so文件)。

system/framework: 該目錄下存放是框架層JAR包,其中MIUI移植來説有3個最JAR包(framework.jar, android.policy.jar, services.jar)。後續文章會重點介紹這3個包。

system/bin: 該目錄下存放是一些可執行文件,基本上是C/C++編寫。其中有一個命令叫app_process下一節介紹。

正如名字所代表意思(注:boot意思是啓動),這個分區使手機可以啓動。它包括了內核(kerne)和ramdisk兩部分。如果沒有這個分區,手機無法啓動到安卓系統。只有時候,才去通過Recovery軟件擦除(format)這個分區,擦除,設備只有新安裝一個boot分區,可以通過安裝一個包含boot分區ROM來實現,否則無法啓動安卓系統。

這個分區基本包含了整個安卓操作系統,內核(kerne)和ramdisk。包括安卓用户界面、和所有預裝系統應用程序。擦除這個分區,會刪除個安卓系統,但會導致不能啓動。你可以通過進入Recovery程序或者bootloader程序中,安裝一個ROM,新安卓系統。

這個分區可以認為是一個boot分區替代品,可以是你手機進入Recovery程序,進行高級恢復或安卓系統維護工作。要詳細瞭解這個分區,請參考CWM使用指南。

m0_51834220:
兄弟,哪家公司?

qq_41334004:
APN各個屬性協議中有定義麼,如果有話,能否告知一下是哪篇協議,十分感謝

本發明涉及Android設備技術領域,涉及一種Android設備DATA分區數據防出錯方法。

現有手機生成後,要手機進行充電及手機系統和軟件進行下載,而手機軟件進行下載過程中會出現掉電情況,導致下載失敗,從而導致手機或者軟件無法使用情況發生,這種情況下採用手動恢復出廠設置,操作複雜,降低產線產能,開機情況下無法使用此法;或者採用文件搜索算法,遍歷速度慢,誤判情況多。

上述技術中存在之處,本發明提供一種Android設備DATA分區數據防出錯方法,通過DATA區內置數據進行記錄,apk 和jar解壓後數據進行刪除,系統生成一份,從而避免了可能。

達到上述目的,本發明一種Android設備DATA分區數據防出錯方法,包括以下步驟:

步驟1,DATA數據生成:下載軟件之前,對需要下載到DATA分區數據進行掃描,並記錄下相應文件名稱到A文件,同時包括A文件名;