Sunday, May 22, 2016

Adb & Fastboot on Ubuntu (For All Android Devices)


ပထမဆုံး adb နဲ့ fastboot command တွေ အလုပ်လုပ်ဖို့အတွက် driver ထည့်ပါမယ်။
Phoneကို PC နဲ့ချိတ်ပြီး terminal ကနေ
#lsusb 
ရိုက်ပါ။

အောက်က နမူနာလို Manufacture ID နဲ့ Model ID ရလာပါလိမ့်မယ်။


# lsusb
...
Bus 002 Device 013: ID 0b05:5f03 ASUSTek Computer, Inc.
...

/etc/udev/rules.d/51-android.rules ထဲမှာ ကိုယ့်ဖုန်းရဲ့ ID ကိုရေးပေးပါ။

ကျွန်တော် အောက်မှာ နမူနာရေးပေးထားပါတယ်။



# udev rule to detect android devices
# These rules refer to http://developer.android.com/tools/device.html

# Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666", GROUP="plugdev"
# Archos
SUBSYSTEM=="usb", ATTR{idVendor}=="0e79", MODE="0666", GROUP="plugdev"
# Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev"
# Azpen Onda
SUBSYSTEM=="usb", ATTR{idVendor}=="1f3a", MODE="0666", GROUP="plugdev"
# BQ
SUBSYSTEM=="usb", ATTR{idVendor}=="2a47", MODE="0666", GROUP="plugdev"
# Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666", GROUP="plugdev"
# Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666", GROUP="plugdev"
# Fujitsu Toshiba 
SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0666", GROUP="plugdev"
# Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="091e", MODE="0666", GROUP="plugdev"
# Google
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
# Haier
SUBSYSTEM=="usb", ATTR{idVendor}=="201e", MODE="0666", GROUP="plugdev"
# Hisense
SUBSYSTEM=="usb", ATTR{idVendor}=="109b", MODE="0666", GROUP="plugdev"
# HTC, Wiko
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
# Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666", GROUP="plugdev"
# Intel
SUBSYSTEM=="usb", ATTR{idVendor}=="8087", MODE="0666", GROUP="plugdev"
# K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666", GROUP="plugdev"
# KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666", GROUP="plugdev"
# Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666", GROUP="plugdev"
# Lab126
SUBSYSTEM=="usb", ATTR{idVendor}=="1949", MODE="0666", GROUP="plugdev"
# Lenovo
SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", MODE="0666", GROUP="plugdev"
# LG
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666", GROUP="plugdev"
# Meizu
SUBSYSTEM=="usb", ATTR{idVendor}=="2a45", MODE="0666", GROUP="plugdev"
# Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev"
# MTK
SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", MODE="0666", GROUP="plugdev"
# NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666", GROUP="plugdev"
# Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666", GROUP="plugdev"
# Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666", GROUP="plugdev"
# Oppo
SUBSYSTEM=="usb", ATTR{idVendor}=="22d9", MODE="0666", GROUP="plugdev"
# OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666", GROUP="plugdev"
# Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="10a9", MODE="0666", GROUP="plugdev"
# Pegatron
SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", MODE="0666", GROUP="plugdev"
# Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666", GROUP="plugdev"
# PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666", GROUP="plugdev"
# Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev"
# Rockcwell Electronics
SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666", GROUP="plugdev"
# SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666", GROUP="plugdev"
# Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev"
# Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666", GROUP="plugdev"
# Sony
SUBSYSTEM=="usb", ATTR{idVendor}=="054c", MODE="0666", GROUP="plugdev"
# Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666", GROUP="plugdev"
# Spreadtrum
SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev"
# T & A Mobile Phones
SUBSYSTEM=="usb", ATTR{idVendor}=="1bbb", MODE="0666", GROUP="plugdev"
# Teleepoch
SUBSYSTEM=="usb", ATTR{idVendor}=="2340", MODE="0666", GROUP="plugdev"
# Texas Instruments UsbBoot
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", MODE="0666", GROUP="plugdev"
# Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666", GROUP="plugdev"
# WEARNERS
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev"
# XiaoMi
SUBSYSTEM=="usb", ATTR{idVendor}=="2717", MODE="0666", GROUP="plugdev"
# ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", MODE="0666", GROUP="plugdev" 

အဲ့တာရေးပြီးရင် udev rule အသက်ဝင်သွားအောင်လို့ ဒီ command လေးကို terminal ကနေ run ပေးပါ။


# sudo wget -O /etc/udev/rules.d/51-android.rules https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/android/51-android.rules
# sudo chmod a+r /etc/udev/rules .d/51-android.rules
# sudo service udev restart

Linux မှာ run ဖို့ adb နဲ့ fastboot ကို download လုပ်ပါမယ်။
ဒီမှာဖတ်လို့ရပါတယ်။ 

ကဲ.... ဒါဆိုရင်တော့ android phone တွေကို  adb and fastboot command တွေကနေ ခိုင်းလို့ရပါပြီ။

Thursday, February 11, 2016

System Language ကို မြန်မာပြောင်းနည်း (No Root)

Group တော်တော်များများမှာ လာလာမေးနေတာရော၊ တစ်ယောက်ချင်းဆီကို ပြောမနေနိုင်တာရယ်ရောကြောင့် post ရေးဖြစ်သွားတာပါ။
ဖုန်းတစ်ချို့က Setting>Language and input ထဲမှာ Myanmar language ပါပေမယ့် Sony တွေမှာတော့ မပါပါဘူး။အဲ့တော့ မပါတော့လည်း ပါအောင်လုပ်ရတာပေါ့။
ဘာတွေလိုလဲဆိုတော့

  1. Adb and fastboot ( Click to Download )
  2. မိမိဖုန်းအတွက် adb driver ( Click to Download )
  3. morelocale2 ( Get it from Google Play Store )
အရင်ဆုံး ဖုန်းရဲ့ Setting>Developer Option မှာ USB Debugging ကို အမှန်ခြစ်ပေးထားရပါမယ်။
ဖုန်းနဲ့ကွန်ပြူတာ မချိတ်ခင် မိမိ Sony ဖုန်းရဲ့  adb driver ကို install လုပ်ပေးပါ။
Minimal ADB and fastboot ကို install လုပ်ပေးပါ။

Morelocale2 app ကို ဖွင့်ပါ။အပေါ်ညာဘက်ထောင့်က custom locale ကို နှိပ်ပါ။

ပထမအကွက် Language မှာ Burmese ကိုရွေးပြီး ဒုတိယအကွက် Country မှာ Myanmar ကိုရွေးပြီး SET ကိုနှိပ်ပါ။

အဲ့မှာ ShowHow to use PM command ကိုရွေးပေးလိုက်ပါ။


ဖုန်းနဲ့ကွန်ပြူတာနဲ့ ချိတ်ပါ။
Desktop ပေါ်က Minimal ADB and fastboot ကို ဖွင့်ပါ။
ပြီးရင် အောက်က command ကို ရိုက်ပါ။ ( copy , paste လုပ်လည်းရတယ် )

adb shell pm grant jp.co.c_lis.ccl.morelocale android.permission.CHANGE_CONFIGURATION

ခုဆိုရင် ဖုန်းရဲ့ language က မြန်မာ ဖြစ်သွားပါပြီ။

Tuesday, January 12, 2016

Xperiafirm ကို Ubuntu တွင် ထည့်သွင်းအသုံးပြုခြင်း

အရင်ဆုံး window program ကို ubuntu မှာ အသုံးပြုနိုင်ဖို့ mono runtime ကို အရင်ထည့်ရပါမယ်။
ctrl+alt+t ကို နှိပ်ပြီး terminal ကိုခေါ်လိုက်ပြီး ဒီ command ကိုရိုက်ပြီး mono ကို ထည့်လိုက်ပါ။

sudo apt-get install mono-complete

Do you want to continue ဆိုရင် Y ကိုနှိပ်ပြီး enter ခေါက်လိုက်ပါ။





လိုအပ်တဲ့ packages တွေ download လုပ်ပါလိမ့်မယ်။

Package တွေ ထည့်ပြီးသွားပြီဆိုရင် အခု ပေးထားတဲ့ command တွေကို တစ်ကြောင်းချင်းဆီရိုက်ရပါမယ်။ (command တစ်ကြောင်းရိုက် enter တစ်ချက်ခေါက်)

sudo mozroots --import --machine --sync
 


 
Result က ဒီလိုပြပါလိမ့်မယ်။




နောက်တစ်ကြောင်းက
sudo certmgr --ssl -m https://software.sonymobile.com


Import this certificate into the CA store ? လို့ မေးလာခဲ့ရင် y ကို နှိပ်ပြီး enter ခေါက်လိုက်ပါ။( သူက ၂ ခါမေးလိမ့်မယ်ဗျ။ ၂ ခါလုံး y နှိပ်ပြီး enter ခေါက်လိုက်)



ဒါဆိုရင်တော့ mono ကနေ xperiafirm ကို run လို့ ရပါပြီ။

$ mono XperiaFirm.exe
ဆိုပြီး သုံးလို့ရပါပြီ။







Tuesday, October 13, 2015

Firmware တင်ခြင်း


အရင်ဆုံး flashtool ကို run လိုက်ပါ( ကျွန်တော်ဒီမှာ Ubuntu ပေါ်မှာrun ထားပါတယ်။window မှာဆို start menu ကနေ run ပါ။)

အခုနောက်ထွက်တဲ့ flashtool ဗားရှင်းက ဖွင့်ဖွင့်ခြင်း အွန်လိုင်းနဲ့ sync လုပ်ပါတယ်။ခဏစောင့်ပါ။
ဖုန်းကို firmware တင်ဖို့ ဘယ်ဘက်အပေါ်ထောင့်က Flash Logo လေးကိုနှိပ်ပါ။
Flash mode ကိုရွေးပါ။

ကိုယ့်ဖုန်းရဲ့ firmware ကို ရွေးပါ။(ကျွန်တော်ဒီမှာတော့ Z c6602 နဲ့ပြထားတယ် . firmwareကို flashtool\firmware folder ထဲထည့်ထားရမှာပါ)
နောက်ပြီး Final verification ကိုအမှန်ခြစ်ပါ။( တစ်ခါတုန်းက အဲ့အမှန်ခြစ်ဖို့ မေ့သွားတာ ၅ နာရီလောက်ကြာသွားတယ်)

Flash နှိပ်ပါ။
အဲ့နောက်မှာတော့ Flashtool က firmware တင်ဖို့ ပြင်ဆင်ပါလိမ့်မယ်။သူပြင်ဆင်လို့ပြီးရင်တော့ ဖုန်းနဲ့ ကွန်ပျူတာနဲ့ချိတ်ပါဆိုပြီးပြပါလိမ့်မယ်။
ဆိုနီ နောက်ထွက်တဲ့ဖုန်းတွေမှာ vol down ခလုပ်က Flash mode ဝင်ဖို့အတွက်ဖြစ်ပြီး vol up ခလုပ်က fastboot mode ဝင်ဖို့အတွက်ဖြစ်ပါတယ်။flash mode က firmware တင်ရာမှာသုံးပြီးတော့ fastbooot mode ကတော့ unlock bootloader လုပ်ဖို့နဲ့ kernel ပြောင်းဖို့အတွက်သုံးပါတယ်။
ဖုန်းနဲ့ကွန်ပျူတာနဲ့ချိတ်ဖို့က firmware တင်မှာဖြစ်တဲ့အတွက် vol down ကို ဖိထား နှိပ်ထားပြီး ကွန်ပျူတာနဲ့ချိတ်ရပါမယ်။(အကောင်းဆုံးက usb ကြိုးချိတ်ရာမှာ ဖုန်းဘက်ကခေါင်းကို အရင်တပ် vol down ဖိပြီး ကွန်ပျူတာဘက်က ခေါင်းကို တပ်တာ အဆင်အပြေဆုံးပါ။)
ကွန်ပျူတာမှာ ကိုယ့်ဖုန်းနဲ့သက်ဆိုင်တဲ့ flash mode driver တွေတော့ flash tool တင်ကတည်းကတင်ထားရမှာပါ။တကယ်လို့ driver မရှိသေးဘူးဆိုရင်တော့ C:\Flashtool\Driver ဆိုတဲ့ folder ထဲမှာ ရှိတဲ့ driver set up ကို run ပေးပြီး ကိုယ်လိုချင်တဲ့ ဖုန်းမော်ဒယ်လ် ရဲ့ driver ကို တင်ပေးလိုက်ပါ။

အဲ့နောက်မှာတော့ flashtool က firmware flashing ကို လုပ်ဆောင်မှာဖြစ်ပြီးတော့ အောက်က prograss bar လေးပြည့်သွားပြီး log မှာ device connected in flash mode ဆိုတဲ့ စာလေးပေါ်လာရင် firmware တင်တာပြီးဆုံးသွားပါပြီ။




Saturday, December 20, 2014

adb ကို ubuntu တွင် install လုပ်ခြင်း

Ubuntu ပေါ်မှာ adb install လုပ်ဖို့ အရင်ဆုံး repo ကို ထည့်ရပါမယ်။
Ctrl+Alt+t ကိုနှိပ် terminal ခေါ်ပြီး ဒီ command ကို ရိုက်(ပျင်းရင် copy,paste ပေါ့)

sudo add-apt-repository ppa:phablet-team/tools && sudo apt-get update
repo ထည့်ပြီးရင်တော့ ဒီ command ရိုက်ပြီး adb နဲ့ fastboot ကိုသွင်းလိုက်ပါ။

sudo apt-get install android-tools-adb android-tools-fastboot
ပြီးသွားရင် adb ကို ubuntu မှာသုံးလို့ရပါပြီ


Network Unlocking Sony Ericsson Live with Walkman(WT19i)

Network unlock လုပ်တယ်ဆိုတာ carrier unlock လုပ်တာပါပဲ။သဘောကတော့ဒီလိုဗျာ။ကျွန်တော် အခုလုပ်မယ့်ဖုန်းက ပြင်သစ် Orange ကဝယ်လာတာ။အဲ့တော့သူ့ရဲ့ orange sim card မဟုတ်ပဲ တခြား sim card ထည့်ရင် ဖုန်းပြောလို့မရတော့ဘူး။Unlock code တောင်းတော့တာပဲ။



အဲ့တော့ sim unlock လုပ်မှ ဘယ် sim card မဆိုထည့်ပြီးသုံးလို့ရမယ်။
အဲ့တော့ ကိုယ်ဝယ်မယ့်ဖုန်းက network lock ဟုတ်မဟုတ်ဘယ်လိုကြည့်မလဲ?
phone keypad က *#*#7378423#*#* နှိပ်ပြီး service info ကနေ sim lock ကိုဝင်ကြည့်ပါ။
တကယ်လို့ network lock ဖြစ်နေတယ်ဆိုရင် အပေါ်ဆုံးက network ရဲ့ဘေးမှာ ကြက်ခြေခက်လေးဖြစ်နေပါလိမ့်မယ်။


အရင်ဆုံး www.wotanserver.com ကိုသွားပြီး account တစ်ခုဖွင့်ပါ။
အဓိက အရေးကြီးတာက wotanserver မှာ Euro 9.99 သွင်းပေးရပါ့မယ်။Paypal နဲ့သွင်းရမှာပါ။
ကျွန်တော်က wt19i နဲ့ပဲလုပ်ပြသွားပါမယ်။
မှုရင်းလင့်ခ်က ဒီမှာပါ။
http://www.wotanserver.com/en/sony-ericsson/se/live-with-walkman-wt19/unlock-tool/debranding-flash

ဒါကတော့ကျွန်တော် payment သွင်းထားတာပါ။

X Unlock tool ကို download ဆွဲပြီး install လုပ်ပါ ။ Click here
X unlock ကိုဖွင့်ပါ။
 ဖုန်းအမျိုးအစားရွေးပါ။

မိမိရဲ့ user name နဲ့ password ရိုက်ပြီး log in ဝင်ပါ။သူက payment ကို check လုပ်ပါလိမ့်မယ်။


အခု ဖုန်းနဲ့ computer နဲ့ချိတ်ခိုင်းပါလိမ့်မယ်။ဒီလိုချိတ်တာက အရေးကြီးပါတယ်။ဒီအတိုင်း usb ကြိုးထိုးလို့မရပါဘူး။test point နဲ့ချိတ်ပြီးမှ usb ထိုးရမှာပါ။အောက်က အဆင့်တွေကိုသေချာကြည့်ပါ။

step 1 ဖုန်းကိုပါဝါပိတ်ပါ။


step 2 ဖုန်း back cover ဖြုတ်၊ battery ဖြုတ် ပါ။

step 3 phone battery အောက်က sticker ကို dryer နဲ့ အပူပေးပါ။တအားပူနေအောင်ပေးစရာမလိုပါဘူး။နည်းနည်းလေးပါပဲ။

step 4 sticker ကို သေချာခွာပါ။




အခုဆိုရင် circuit ကို မြင်ရပါပြီ။
အဲ့ဒီမှာ Connect to GND နဲ့ GND  ဆိုပြီး ပြထားတဲ့ အမှတ် ၂ ကို ရှိတယ်။အဲ့ အမှတ် ၂ ခုကို ပင်နဲ့ထောက်ထားတဲ့  အချိန်မှာ တစ်ပြိုင်နက် Usb ချိတ်ရမှာပါ။
ပုံကိုကြည့်ပါ။

အဲ့လိုချိတ်လိုက်ရင် ကွန်ပျူတာက driver အသစ်ကို တွေ့တယ်လို့ပြပါလိမ့်မယ်။
 အခုဆိုရင် test point ကို ထောက်ထားတဲ့ pin ကို လွတ်လိုက်လို့ရပါပြီ။




အခုလို ပုံအတိုင်း ပေါ်လာပြီဆိုရင်တော့ ဖုန်းက network unlock ဖြစ်သွားပါပြီ။
ဘယ်နိူင်ငံက sim card မဆိုထည့်ပြီး သုံးလို့ရပါပြီ။

Friday, December 19, 2014

Custom Rom များအကြောင်း

Android custom ROM တွေရဲ့အခန်းကဏ္ဍ အကြောင်းကို အမြဲတမ်းသိချင်နေခဲ့တာလား ?
market ရဲ့နောက်ကွယ် က သင့်ဖုန်းကို custom upgrade လုပ်ခြင်းအကြောင်း ဆိုတာဘာလဲ?
ဘယ်သူတွေလိုတာလဲ? ဘာအတွက်လိုတာလဲ? စိတ်ချရရဲ့လား? 
ဟုတ်ကဲ့။ ကျွန်တော်တို့ အဲ့ဒါတွေကို တစ်ချက်လောက် ကြည့်လိုက်ရအောင်။
ROM ဆိုတာက Read Only Memory ကိုဆိုလိုတာဖြစ်ပါတယ်။ ဒါပေမယ့် ဒီနေရာမှာတော့ ROM ဆိုတာက သင့်ဖုန်းရဲ့ ROM Area မှာ ထည့်သွင်းထားတဲ့၊ စိတ်တိုင်းကျပြုပြင်ထားတဲ့ OS Image ကိုဆိုလိုတာဖြစ်ပါတယ်။ Stock ROM ဆိုတာကတော့ ဖုန်းဝယ်လိုက်တဲ့အခါမှာ ဖုန်းနဲ့အတူ ပါလာတဲ့ ဖုန်းရဲ့ OS Version ဖြစ်ပါတယ်။  
 kernel ဆိုတဲ့စကားလုံး ကတော့ OS ရဲ့ နှလုံးသား လို့ပြောလို့ရပါတယ်။ OS ရဲ့ မရှိမဖြစ်တဲ့ အစိတ်အပိုင်းတခုပေါ့။

Custom ROMs


Custom ROM ဆိုတာ ကတော့ OS ရဲ့ Standalone Version ကိုပြောတာဖြစ်ပြီး Kernel လည်းပါဝင်ပြီးဖြစ်ပါတယ်။ Kernel ဆိုတာက ဖုန်းမှာပါတဲ့ Application တွေ၊ Services တွေ နဲ့ တခြား ဖုန်းအလုပ်လုပ်အောင် လုပ်ပေးတဲ့အရာမှန်သမျှကို Run ပေးတဲ့အရာဖြစ်ပြီး OS ရဲ့ မရှိမဖြစ်တဲ့ အစိတ်အပိုင်းတစ်ခုဖြစ်လို့ OS ရဲ့ နှလုံးသား လို့ တောင်ပြောလို့ရပါတယ်။ ဒါပေမယ့် ဒီ Custom ROM မှာပါတဲ့ Kernel ကိုတော့ Developer က သူ့စိတ်ကြိုက်ပြင်ဆင်ထားပါတယ်။
ဒါဆို ... စိတ်ကြိုက်ပြင်ဆင် တယ်ဆိုတဲ့ အပိုင်းကဘယ်လိုလဲ?
ခင်ဗျားတို့ သိတဲ့အတိုင်းပဲ Android က Open Source ဖြစ်နေတဲ့အတွက် Developers တွေက Stock ROM တွေကို Free ယူခွင့်ရှိပါတယ်။ ဒါနဲ့ပဲ Stock ROM တွေကို သူတို့စိတ်တိုင်းကျပြုပြင်တယ်။ သူတို့ ဥာဏ်စွမ်းရှိသလောက် လိုတိုးပိုလျှော့လုပ်တယ်။

Custom ROMs တွေကို ဘာလို့လိုအပ်တာလဲ

Custom ROM ကို အသုံး ပြု ခြင်းအားဖြင့် Bugs တွေကို Fix လုပ်ထားတဲ့ Updates တွေ နဲ့ Features အသစ်တွေကို အမြဲတမ်းရနေမှာ ဖြစ်ပါတယ်။ (Features အသစ် တွေ ဆိုတာကိုပြန်ရှင်း ရရင် အခု ဗားရှင်း 2.3.3 မှာဆိုရင်  flash  ကို support လုပ်ပါတယ်။အဲ့ဒီအတွက် ကျွန်တော်တို့က 2.3.3 ROM ကိုလိုအပ်လာပါတယ်။ဒါပေမယ့် တချို့ devices တွေအတွက် 2.3.3 က official မထွက်ပါဘူး။ဒီအတွက် 2.3.3 Custom ROM  ကိုလိုရခြင်းဖြစ်ပါတယ်)။ ဘာလို့လဲဆိုတော့ ဒီ ROM ကိုထုတ်တဲ့ Developer ဟာ ဖုန်းကုမ္ပဏီတွေလုပ်တဲ့ လုပ်ငန်းစဉ်အတိုင်း လုပ်စရာမလိုလို့ပဲဖြစ်ပါတယ်။
  • ဆိုလိုတာကတော့  ROM developer တယောက်ဟာ project manager တွေ marketing department တွေ နဲ့ စုပေါင်းပြီး  အစည်းအဝေး ထိုင် နေစရာမလို လို့ အမြဲတမ်းပိုကောင်းတဲ့ update တွေကို မြန်မြန် ထုတ်ပေးနိူင်တယ်။
  • developer ဟာ သူထုတ်လိုက်တဲ့ update ကို စမ်းသပ်သုံး စွဲတဲ့  အဖွဲ့အစည်း ကနေ feedback(ပြန်ကြားစာ) တွေရတယ်။အဲ့ဒီပြန်ကြားစာတွေ ကနေ bugsတွေကို ပြန်ပြင်တယ်။ Error တွေပြင်တယ်။ ဒါက လည်း open source software ရဲ့ အားသာချက် တခုပါပဲ။
  • ROM တွေကို များသောအားဖြင့် Free ရတယ်။ မပေးလို့လည်းရတဲ့ Donation တွေနဲ့ Support လုပ်ထားတယ်လို့ ပြောရမလားမသိဘူး။ ဟုတ်ပါတယ်။ အဲ့ဒီအတိုင်းပါပဲ။ ခင်ဗျားပေးချင်စိတ် မရှိရင် မပေးဘဲနေလို့ရပါတယ်။
  • Custom ROM အများစုဟာ OTA(over the air) ကနေupdate လုပ်လို့ရပါတယ်။နောက်ထပ်ဘာကိုမှ reinstall လုပ်စရာမလိုပဲနဲ့ပေါ့။
ကဲဒါဆို ဘယ်သူက open source ကို မကြိုက်ပဲနေမှာလဲ? :-P

ပိုကောင်းတဲ့လုပ်ဆောင်ချက်နဲ့ စွမ်းရည်

Custom ROM တွေဟာ မြန်တယ်၊စွမ်းရည်ပိုကောင်းတယ်၊memory အစားနည်းတယ်။ဘာလို့လဲဆိုတော့
  • developer က အသုံးမဝင်တဲ့ အမှိုက်တွေကို ဖယ်ထုတ် လိုက်တယ်။အမှိုက်ဆိုတာက  carrier က install လုပ်ထားတဲ့ application တွေကိုပြောတာဖြစ်တယ်။( Sony Ericsson မှာဆို Latitude တို့ Track ID တို့ Road Sync တို့ပေါ့ )
  • နောက်ပြီး Developer ကသူ့ရဲ့  Kernel ကို အကောင်းဆုံးဖြစ်အောင် လုပ်တယ်။ ဥပမာ သူ့ Kernel ရဲ့ Stock ROM က Battery ထက် သက်တမ်းပိုခံတာမျိုးပေါ့။

ပိုကောင်းသော Version သို့ Upgrade လုပ်ခြင်း

ခင်ဗျားတို့ အနေနဲ့ ခင်ဗျားတို့ device အတွက် တရားဝင် official release မထွက်သေးတဲ့ version   ဒါမှမဟုတ် ဘယ်တော့မှထွက်လာမှာမဟုတ်တဲ့ version ကို  upgrade လုပ်လို့ရပါတယ်။ ( ဥပမာ Sony Ericsson ဆိုရင် Sony  ကထုတ်တဲ့ official release မဟုတ်တဲ့ version ပေါ့။ ပြောရရင် X 10 mini အတွက်ဆိုရင်  version  2.1 ပဲထွက်ပေးထားတယ်။ဒါကို ခင်ဗျားက  2.3..3 ကို upgradeလုပ်ချင်တဲ့အခါ official release မထွက်သေးတဲ့အတွက် ခင်ဗျားရဲ့ ဖုန်းနဲ့ သင့်လျှော် တဲ့   Custom ROM ကို သုံးရမှာဖြစ်တယ်)
  • ROM အသစ်တခု က online မှာထွက်လာပါတယ်။အစားမက်တဲ့ ဖက်တီးလေးတယောက် ရေခဲမုန့်လှည်းနောက်လိုက်သလို developer ကလည်း  အဲ့ဒီ ROM ကိုရအောင် online မှာလိုက်ရှာပါတယ်။ဒါက Hero and Android 2.1 ရဲ့အဓိကပြဿနာ ပဲဖြစ်ပါတယ်။ဘာလို့လဲဆိုတော့ official version မထွက်ခင် ဆယ်ရက် အလိုကတည်း က custom ROM ကို upgrade လုပ်ခွင့် ရ တဲ့အတွက် stock OS တွေက အလိုလိုနေရင်း ချောင်ထိုး ခံလိုက်ရပါတယ်။
  • အခြားဖုန်းတခုက ROM ကို မင်းရဲ့ဖုန်းမှာ သုံးလို့ရအောင် developerကလုပ်ပေးပါတယ်။ ဥပမာ ဆိုရင် G1 and My Touch 3G အသုံးပြုတဲ့သူတွေဟာ Android 2.1 ရဲ့official ဗားရှင်းကို သူတို့ဖုန်းမှာဘယ်တော့မှတွေ့ရမှာမဟုတ်ပါဘူး။ ဘယ်တုန်းကထွက်မလာခဲ့လို့ပါပဲ။ဒါပေမယ့် Android developer တွေထဲကနံမည်ကြီးတယောက်ဖြစ်တဲ့ Cyanogen က Android 2.1 အသုံးပြုထားတဲ့ custom ROM တခုကို G1 and My Touch 3G မှာသုံးလို့ရအောင် developed လုပ်ပြီးထုတ်ပေးခဲ့ပါတယ်။အဲ့ဒီနေ့က G1 and My Touch 3G အသုံးပြု တဲ့သူတွေအတွက်တော့ ပျော်စရာနေ့လေးတရက်ပေါ့ ။ 
  •  

    Custom ROMကိုမကောင်းတဲ့ဘက်ကကြည့်ခြင်း

     ဘယ်လိုပဲဖြစ်ဖြစ် custom ROM တွေကို အသုံးပြုရာ မှာလည်းရှောင်ရှားသင့်တဲ့ ဆိုးကျိုးတွေရှိပါတယ်။
     

    တခုခုလွဲသွားခြင်း
    Flashing (ROM ကို Install လုပ်ခြင်း) လုပ်နေစဉ်မှာ ချို့ယွင်းချက်တွေရှိနိူင်ပါတယ်
    ။.အဆိုးဆုံးကတော့ ခင်ဗျားရဲ့ဖုန်းကို သုံးမရတဲ့အနေအထား ထိရောက်သွားစေနိုင်ပါတယ်။ ဒါပေမယ့် အခုအချိန်မှာတော့ ဒီလိုဖြစ်နိုင်ချေ တော်တော်နည်းသွားပါပြီ။ မူရင်းအခြေအနေကို Restore ပြန်လုပ်ဖို့လည်းလွယ်သွားပါပြီ။ ဒါနဲ့ပတ်သက်ပြီး ကျွန်တော့်အနေနဲ့ Positive Feedback အများဆုံးရှိတဲ့၊
    လူတော်တော်များများစမ်းသပ်ပြီးတဲ့ ROM တွေကိုသာ သုံးသင့်တယ်လို့ အကြံပေးလိုက်ပါရစေ။
    Clean Wipeလုပ်ခြင်း
    Custom ROM တခုကို install လုပ်ဖို့မယ်ဆိုရင် အရင်ဆုံးclean wipe လုပ်ဖို့လိုပါတယ်။

    clean wipe လုပ်လိုက်ရင်တော့ ရှိသမျှ data တွေအကုန်လုံး ပျက်ဆီး ဆုံးရုှူံး မှာပေါ့။ဒါကြောင့် clean wipe မလုပ်ခင်မှာ ရှိသမျှ  data  တွေကို back up  အရင်ဆုံးလုပ်ထားသင့်ပါတယ်။
    နောက်ထပ် ဖြစ်လာနိူင် တဲ့ပြဿနာများ
    Custom ROMs တွေမှာ error တွေ bugs တွေရှိနိူင်ပါတယ်။ဒါတွေက stock rom တွေမှာလည်း ရှိပါတယ်။
    ဘယ်လိုပဲဖြစ်ဖြစ် အကယ်၍ ခင်ဗျား က bug တခုကိုတွေ့ခဲ့မယ်ဆိုရင် ROM forum မှာ အကူအညီ တောင်းနိူင်ပါတယ်။သူတို့က ခင်ဗျားရဲ့ bug နဲ့ပါတ်သက် ပြီး အကောင်းဆုံး အဖြေ ကို ပေးပါလိမ့်မယ်။

     

    အာမခံမရခြင်း

    custom rooting လုပ်ခြင်းက boot loader အပိုင်းမှာပါရှိတဲ့ seal ကိုဖျက်ဆီး လိုက်တဲ့အတွက် ခင်ဗျားဖုန်းရဲ့  အာမခံ ကို ပျက်စီး စေနိူင်ပါတယ်။seal ပျက်သွားတာ ပြန်ပြင်လို့မရပါဘူး။ဒါကြောင့် ဖုန်းထုတ်လုပ်တဲ့သူတွေ က သင် တကယ်လို့ custom ROM ထည့်မယ်ဆိုရင် ဖုန်းရဲ့ အာမခံပျက်စီး မယ်ဆိုတာကို ပြောပြ ထားပါတယ်။
    မှန်ကန်သောCustom ROMကို ရယူခြင်း
    ဖုန်းအသစ်တွေထွက် တာနဲ့အမျှ ROM အသစ်တွေလည်း တပြိုင်နက်ထွက်လာပါတယ်။ဒီဆောင်းပါးမှာတော့ ဘယ်ဖုန်း က ဘယ် ROM နဲ့ သုံးလို့ရတယ်ဆိုတာပြော မှာမဟုတ်ပါဘူး။အကောင်းဆုံးအကြံပေးချင်တာကတော့ Google မှာ ဖုန်း ရယ် MODEL ရယ် ROM ရယ် ကိုယ်သုံးချင်တဲ့ Android version ရိုက်ပြီးရှာကြည့် ရင်တော့ သင်လိုချင်တာရနိူင်ပါတယ်။