Android Recovery များအကြောင်း သိကောင်းစရာ

date_range 04 May 2017

Android Recovery များအကြောင်း သိကောင်းစရာ

visibility 650 Views

                ဟိုးအရင်တစ်ခါတုန်းက ကျွန်တော် Android File System အကြောင်းကိုရေးသားခဲ့ဖူးပါတယ်။ (ရေးသားခဲ့တဲ့ Article ကိုမဖတ်ရှုရသေးပါက ဒီ Link မှာ ၀င်ရောက်ဖတ်ရှုနိုင်ပါတယ်။) အဲ့မှာ ကျွန်တော် Custom Recovery တွေနဲ့ Custom ROM zip တွေကို System mount point (/dev/block/mmblkxxxxx) ယူပြီး Custom OS တွေတင်တာကို ပြောခဲ့ပါတယ်။

                အခုဆောင်းပါးမှာတော့ Recovery Mode ဆိုတာဘာလဲ။ ဘယ်လိုအသုံး၀င်သလဲဆိုတာကို ကျွန်တော် ဆက်လက်ရှင်းပြပေးပါမယ်။

                Android Recovery Mode ဆိုတာကို အတော်များများကြားဖူးကြသလို မသိမကျွမ်းတဲ့သူတွေလည်း ရှိကောင်း ရှိပါလိမ့်မယ်။ Recovery ဆိုတာက Android မှာ Combination Key (Volume Up နဲ့ Power ခလုပ်တွဲနှိပ်တာတို့၊ Boot တက်တဲ့အချိန် Volume Up ခလုပ်ကိုသုံးလေးချက်နှိပ်တာတို့ စတဲ့ Manufacturers အလိုက် Key combinations အမျိုးမျိုး)၊ ဒါမှမဟုတ်လည်း ADB (Android Debug Bridge) ကနေ “adb reboot recovery” ဆိုတဲ့ command နဲ့လည်း Recovery mode ကို၀င်လို့ရပါတယ်။ Recovery Mode ဆိုတာကတော့ Android ဖုန်းအတော်များများမှာပါ၀င်တဲ့ Bootable partition တစ်ခုပါ။ အသုံး၀င်ပုံတွေကိုတော့ အောက်မှာကျွန်တော် ဆက်လက်ရှင်းပြပေးပါမယ်။

                ကျွန်တော်တို့ အရင်ဆုံး Custom Recovery တွေအကြောင်း စ မပြောခင် Android phone environment တွေမှာ pre-installed ပါလာတဲ့ Stock Recovery တွေအကြောင်း စ ပြောကြရအောင်။ 


Stock Recovery

                အခုနောက်ပိုင်း Android Phones တွေမှာ Stock Recovery မပါတဲ့ဖုန်းဆိုတာ အရမ်းကိုနည်းပါတယ်။ မပါခဲ့တဲ့ဖုန်းတွေကို သတိထားမိတာက Sony Ericsson ဟိုးအရင်ကဖုန်းတွေမှာ မပါ၀င်ခဲ့ပါဘူး။ Gingerbread နောက်ပိုင်းဖုန်းတွေအထိ ကို ပါ၀င်လာခဲ့ခြင်းမရှိသေးတာကိုတွေ့ရပါတယ်။ စာရေးသူကိုယ်တိုင် Stock Recovery တွေကို စ သတိထားမိလာတာကတော့ Samsung ဖုန်းတွေမှာ Volume Down နဲ့ Power ခလုပ်တွဲဖိထားရင် Download Mode (Odin flash mode) ကိုတက်ပြီး Volume Up နဲ့ Power button တွဲဖိထားရင် Android System Recovery ဆိုပြီး တက်လာတာကိုတွေ့ရပါတယ်။ Samsung Galaxy Young နဲ့ Galaxy Neo မှာကအစ ပါ၀င်ပါတယ်။

                "Stock Recovery" တိုင်းရဲ့အသုံး၀င်ပုံတွေဟာ ရိုးရှင်းပြီး ထူးထူးခြားခြား လုပ်ဆောင်ချက်တွေမပါ၀င်ပါဘူး။ များသောအားဖြင့် OTA (Over The Air) Updates တွေ patch လုပ်ဖို့ရယ်၊ Factory reset လုပ်ဖို့၊ Cache partition ကိုရှင်းဖို့ နဲ့ SD Card ထဲမှ update.zip (Custom ROM မဟုတ်ပါ။ Official Firmware Update zip ကိုပြောတာပါ) ကိုဆွဲတင်ဖို့ လောက်ပါပဲ။ သိပ်အသုံးမ၀င်ပါဘူး။ သို့သော်လည်း Android ဟာ Open source ဖြစ်တာကြောင့် Recovery source တွေကိုယူပြီး Modified တွေလုပ်ကြတဲ့အခါ ဒီထက်ပိုပြီး Function တွေပိုများလာတဲ့ Custom Recovery တွေထွက်ရှိလာပါတယ်။ Stock Recovery မှာတော့ Volume ခလုပ်တွေနဲ့သာ Menu ကိုရွေးရပြီး Power ခလုပ်က Confirm ခလုပ်အဖြစ် Navigate လုပ်ရပါတယ်။ Touch အသုံးပြုလို့မရပါ။ (တစ်ချို့ Stock recovery တွေမှာတော့ Touch ပါအသုံးပြုလို့ရပါတယ်။ Manufacturer အပေါ်မူတည်သလို အသုံးပြုလို့ရတာရှားပါတယ်။) ကျွန်တော်တို့ Custom Recovery တွေအကြောင်းဆက်ပြောကြရအောင်။ 

Custom Recovery

                Custom Recovery ဆိုတာကတော့ Third-party recovery environment တစ်ခုပဲဖြစ်ပါတယ်။ ဒီနေရာမှာ Custom Recovery mods ပေါင်းမြောက်များစွာ ရှိပေမဲ့လို့ နာမည်အကြီးဆုံး အသုံးအများဆုံးဖြစ်တဲ့ Clockworkmod Recovery (CWM) နဲ့ Team Win Recovery Project (TWRP) စတဲ့ Custom Recovery တွေအကြောင်းကို ကျွန်တော်ရေးသားပေးသွားပါမယ်။ 

                Custom Recovery တွေရဲ့ Main function တွေဟာ အစောပိုင်းကာလမှာ Custom ROM (Custom OS) တွေဖြစ်တဲ့ Cyanogenmod၊ Paranoid Android၊ AOKP၊ Lewa OS၊ MIUI စတဲ့ OS တွေကို ပြောင်းဖို့အတွက် အသုံးများခဲ့ပါတယ်။ (စာကြွင်း။ MIUI ဟာ Xiaomi Mi Phones တွေအဖြစ်မထုတ်လုပ်ခင်မှာ Custom OS အနေနဲ့ရပ်တည်ခဲ့ပါတယ်။) နောက်ပိုင်းမှာတော့ Bootloader unlocking တွေလုပ်ပြီး SuperSU zip တွေ flash၊ Root access ယူရတဲ့အထိကို သုံးကြရတာမို့ Custom Recovery တွေလိုအပ်ချက်က ပိုအရေးပါလာပါတယ်။  Recovery partition ကိုယူသုံးပြီး Root access ယူတဲ့နည်းကို စ တင်ခဲ့တာက ChainFire (SuperSU creator) ပဲဖြစ်ပြီး Samsung Galaxy S3 မှာအသုံးများခဲ့ပါတယ်။ အဲ့တုန်းက recovery partition သက်သက်ယူသုံးတာဖြစ်ပြီး Custom Recovery ကနေ Flashable zip ကို flash ချတာ မဟုတ်တာကိုတော့ သတိချပ်ရမှာပါ။ 


ClockWorkMod Recovery

                ClockWorkMod (CWM) Recovery ဟာ အစောပိုင်းကာလ Android phone တွေမှာ popular ဖြစ်ခဲ့တဲ့ Custom Recovery အမျိုးအစားတစ်ခုဖြစ်ပါတယ်။ သူ့ရဲ့ function တွေကတော့ Custom ROM zips တွေကို zip ထဲမှာပါတဲ့ META-INF>com>google>android folder ထဲက updater-script ပေါ်မှာရေးထားတဲ့ scripting syntaxes အပေါ်မူတည်ပြီး Flashing လုပ်တာ modify လုပ်တာတွေ၊ ကိုယ့် Firmware တစ်ခုလုံး အစအဆုံးကို Image တစ်ခုအနေနဲ့ဖန်တီးပြီး Backup/Restore လုပ်တာတွေ၊ Storage mounting နဲ့ ADB access ကို Custom recovery ပေါ်မှာလုပ်လို့ရတာတွေ၊ MTP (Media Transfer Protocol) နဲ့ ဖုန်းရဲ့ Internal/External storage တွေထဲက ဖိုင်တွေ transfer လုပ်တာ အစရှိတဲ့ function မျိုးစုံပါ၀င်ပါတယ်။ 

                ဒီနေရာမှာတော့ အသုံး၀င်ဆုံးက Custom OS တစ်ခုမတင်ခင် လက်ရှိကောင်းနေတဲ့ Firmware တစ်ခုလုံး (User data တွေကအစ Apps data တွေအဆုံး) Backup လုပ်ပြီး တစ်ခုခုမှားယွင်းသွားပါက Recovery mode ပြန်ခေါ်ပြီး Restore လုပ်နိုင်တာပါပဲ။ Sony Ericsson အစောပိုင်းကာလဖုန်းတွေမှာကတော့ Recovery partition မပါ၀င်တဲ့အတွက် Busybox binary ကနေ Ramdisk ကို config လုပ်ပြီး Recovery boot တာရှိသလို Bootloader unlock ရတဲ့သူတွေက Custom Boot image (Kernel image) တင်ပြီး ထို kernel ထဲက Ramdisk ထဲမှာ Custom Recovery inject လုပ်တဲ့နည်းကိုအသုံးပြုခဲ့ကြရပါတယ်။ များသောအားဖြင့်လည်း CWM ပဲသုံးခဲ့ကြပါတယ်။  CWM Recovery အတော်များများဟာ Stock recovery အတိုင်း Navigation ဆင်တူပြီး နောက်ပိုင်းမှာတော့ Touch navigation တွေပါ၀င်လာပါတယ်။ 


Team Win Recovery Project

                Team Win Recovery Project (TWRP) ဟာဆိုရင် CWM ထက်ပိုပြီး Advanced ကျတဲ့ Touch အသုံးပြုလို့ရတဲ့ Custom Recovery အမျိုးအစားတစ်ခုဖြစ်ပါတယ်။ CWM မှာပါ၀င်တဲ့ features တွေအပြင် ထပ်တိုးလာတာတွေကတော့ Terminal shell အသုံးပြုလို့ရလာပါတယ်။ English Native Keyboard တစ်ခုပါ၀င်ပါတယ်။ OTG Support ပါ၀င်လာပြီး USB Flash Drives တွေကနေ ROM Flash တွေလုပ်နိုင်သလို Internal/External Storage ထဲမှဖိုင်များကိုလည်း လွယ်ကူစွာ ပြောင်းရွှေ့နိုင်မယ့် File Manager ပါ၀င်လာပါတယ်။ File Manager ဟာဆိုရင် Root Explorer ပုံစံအတိုင်း file permission ပြောင်းတာတွေ Copy/Move/ Rename/ Details အစရှိတဲ့ function တွေပါ၀င်လာပါတယ်။ Allow Modifications သာမပေးထားခဲ့ရင် TWRP ဟာ  Official OTA Updates တွေကိုပါ Install လုပ်ပေးနိုင်စွမ်းရှိပါတယ်။ Flash logs တွေကိုလည်းလွယ်ကူစွာ touch နဲ့ scroll ကြည့်နိုင်ပါသေးတယ်။ နောက်ပိုင်း Modern phones တွေမှာအသုံးများတဲ့ Popular အဖြစ်ဆုံး Recovery ပဲဖြစ်ပါတယ်။ 

Recovery Scripting

                ဒါကတော့ Recovery အပိုင်းနဲ့သိပ်မဆိုင်ပေမဲ့ လိုအပ်တယ်ထင်လို့ ဖြည့်စွက်ပေးထားတာပါ။ Recovery scripting မှာ legacy ဖြစ်သွားတဲ့ Amend scripting နဲ့ လက်ရှိသုံးနေဆဲဖြစ်တဲ့ Edify scripting ဆိုပြီး နှစ်မျိုးရှိပါတယ်။ get_assert function တွေနဲ့အတူ ROM flashing မှာ မမှားအောင် build.prop ဖိုင်ကနေ model codename ခေါ်ယူပြီးမှ Match ဖြစ်ရင် Flash၊ မဖြစ်ရင် abort လုပ်ပြီး Status 7 error တွေပြန်ပေးတာတို့ဘာတို့ကို မြင်ဖူးမယ်ဆိုရင် အဲ့အရာတွေအားလုံးဟာ ဒီ Recovery scripting နဲ့ရေးထားတာတွေကြောင့်ဆိုတာ သိစေချင်ပါတယ်။ Edify မှာတင်ပဲ ထူးခြားတဲ့ AROMA Installer ဆိုတာလည်းရှိပါသေးတယ်။ သူဟာ Flash တာနဲ့ Installer ပုံစံတစ်ခုပေါ်လာမှာဖြစ်ပြီး CWM Recovery တွေမှာတင်ပဲ တချို့ Aroma Installer တွေဟာ Touch navigation သုံးလို့ရအောင် ရေးထားတာတွေရှိပါတယ်။ လိုအပ်တာတွေရွေးချယ် Flashing ပြုလုပ်လို့ရအောင် ထွင်ထားတဲ့ပုံစံတစ်မျိုးပါပဲ။

                ဒီလောက်ဆိုရင် Recovery၊ Stock Recovery နဲ့ Custom Recovery အကြောင်းတွေအတော်များများသိသွားလောက်ကြမယ်လို့မျှော်လင့်ပါတယ်။ မေးမြန်းအကြံပြုချင်တယ်ဆိုရင်လည်း ကျွန်တော်တို့ TechX Myanmar Facebook Page ကနေ တိုက်ရိုက် မေးမြန်းဆက်သွယ်နိုင်ပါတယ်ခင်ဗျာ။ ၀င်ရောက်ဖတ်ရှုတဲ့အတွက်လည်း ကျေးဇူးတင်ရှိပါတယ်။


References
How To Geek XDA Developers (Recovery Scripting)
About Author
Assinged Tags
Features Android technology Recovery related stuffs Clockworkmod Team Win Recovery Project Stock Android Recovery Knowledge about Android
Categorized Under
Features

Join Us On

Facebook
YouTube
Twitter
GooglePlus
TechX RSS Feed