ဒီသင္ခန္းစာ မွာ ADB အလုပ္လုပ္ပံုကိုရွင္းျပေပးမွာျဖစ္ပါတယ္။ ADB ဆိုတာ Android Debug Bridge ကိုေျပာတာပါ။ Android Device ေတြကို Computer ကေန လွမ္းထိန္းခ်ဳပ္ႏိုင္ဖို႔အတြက္ ထုတ္ထားေပးတဲ႔ ဘက္စံုသံုး Command Line Tools ျဖစ္ပါတယ္။ADB Tools ကို Android SDK ထဲက platform-tools ထဲမွာရယူႏိုင္ပါတယ္။ ADB မွာအစိတ္အပိုင္း ၃ပိုင္းပါ၀င္ပါတယ္။အဲ့တာကေတာ့ ADB Clients ၊ ADB Server ၊ ADB Daemon တို႕ပဲျဖစ္ပါတယ္။
ADB Clients က Development Machine မွာ အလုပ္လုပ္ပါတယ္။ လြယ္လြယ္ေျပာရရင္ ကၽြန္ေတာ္တို႕ Computer မွာ အလုပ္လုပ္ပါတယ္။
ADB Server ကေတာ့ Development Machine ရဲ႕ေနာက္ကြယ္ကေနအလုပ္လုပ္ပါတယ္။ ADB Server က ADB Clients နဲ႕ ADB Daemon တို႕ရဲ႕ဆက္သြယ္မွု ကို စီမံခန္႕ခြဲေပးပါတယ္။
ADB Daemon ကေတာ့ Emulator သို႕မဟုတ္ Android Device မွာေနာက္ကြယ္ကေနအလုပ္လုပ္ပါတယ္။
ADB Client ကိုစတင္တဲ႔အခါမွာ ADB Client က ADB Server အလုပ္လုပ္ေနလား မလုပ္ဘူးလားဆိုတာ ပထမဆံုး စစ္ေဆးပါတယ္။ တကယ္လို႕ Server အလုပ္မလုပ္ေနဘူးဆိုရင္ေတာ့ Server ကို စတင္အလုပ္လုပ္ေစပါတယ္။ ADB Server ကစအလုပ္လုပ္ၿပီဆိုတာနဲ႕ port 5037 ကိုလွမ္းခ်ိတ္ၿပီး ADB Client က လာမယ့္ Command ေတြကို နားေထာင္ေနပါတယ္။ ADB Client အားလံုးက ADB Server နဲ႔ခ်ိတ္ဖို႔ port 5037 ကိုအၿမဲအသံုးျပဳပါတယ္။ၿပီးေတာ့ADB Server က Emulator သို႕မဟုတ္ Android Device ကိုခ်ိတ္ဆက္ဖို႕လုပ္ပါတယ္။ ADB Server က Android Device ရဲ႕ port 5555 ကေန 5585 ၾကားရွိ မကိန္း port ေတြကို စစ္ေဆးပါတယ္။ ADB Daemon ရွိတဲ႔ port ကိုေတြ႕သြားေတာ့မွ Server ကအဲ့ဒီ port ကိုခ်ိတ္ဆက္ပါတယ္။ဒါက ADB Client ၊ ADB Server ၊ ADB Daemon တို႕ၾကားကဆက္သြယ္အလုပ္လုပ္ပံုပါ။ ADB Server က ပံုမွန္အားျဖင့္ သူ႕အလိုလိုစတင္ပါတယ္။တကယ္လို႔ ADB Server ကိုျပန္စတင္ေစခ်င္ရင္ေတာ့ adb kill-server လို႕ Command ေပးၿပီးမွ adb start-server လို႕ Command ျပန္ေပးရမွာပါ။
ADB Clients က Development Machine မွာ အလုပ္လုပ္ပါတယ္။ လြယ္လြယ္ေျပာရရင္ ကၽြန္ေတာ္တို႕ Computer မွာ အလုပ္လုပ္ပါတယ္။
ADB Server ကေတာ့ Development Machine ရဲ႕ေနာက္ကြယ္ကေနအလုပ္လုပ္ပါတယ္။ ADB Server က ADB Clients နဲ႕ ADB Daemon တို႕ရဲ႕ဆက္သြယ္မွု ကို စီမံခန္႕ခြဲေပးပါတယ္။
ADB Daemon ကေတာ့ Emulator သို႕မဟုတ္ Android Device မွာေနာက္ကြယ္ကေနအလုပ္လုပ္ပါတယ္။
ADB Client ကိုစတင္တဲ႔အခါမွာ ADB Client က ADB Server အလုပ္လုပ္ေနလား မလုပ္ဘူးလားဆိုတာ ပထမဆံုး စစ္ေဆးပါတယ္။ တကယ္လို႕ Server အလုပ္မလုပ္ေနဘူးဆိုရင္ေတာ့ Server ကို စတင္အလုပ္လုပ္ေစပါတယ္။ ADB Server ကစအလုပ္လုပ္ၿပီဆိုတာနဲ႕ port 5037 ကိုလွမ္းခ်ိတ္ၿပီး ADB Client က လာမယ့္ Command ေတြကို နားေထာင္ေနပါတယ္။ ADB Client အားလံုးက ADB Server နဲ႔ခ်ိတ္ဖို႔ port 5037 ကိုအၿမဲအသံုးျပဳပါတယ္။ၿပီးေတာ့ADB Server က Emulator သို႕မဟုတ္ Android Device ကိုခ်ိတ္ဆက္ဖို႕လုပ္ပါတယ္။ ADB Server က Android Device ရဲ႕ port 5555 ကေန 5585 ၾကားရွိ မကိန္း port ေတြကို စစ္ေဆးပါတယ္။ ADB Daemon ရွိတဲ႔ port ကိုေတြ႕သြားေတာ့မွ Server ကအဲ့ဒီ port ကိုခ်ိတ္ဆက္ပါတယ္။ဒါက ADB Client ၊ ADB Server ၊ ADB Daemon တို႕ၾကားကဆက္သြယ္အလုပ္လုပ္ပံုပါ။ ADB Server က ပံုမွန္အားျဖင့္ သူ႕အလိုလိုစတင္ပါတယ္။တကယ္လို႔ ADB Server ကိုျပန္စတင္ေစခ်င္ရင္ေတာ့ adb kill-server လို႕ Command ေပးၿပီးမွ adb start-server လို႕ Command ျပန္ေပးရမွာပါ။
0 comments:
Post a Comment