Wednesday, August 22, 2012

Developer ေတြသိထားသင့္တဲ့ Android ရဲ႕ Screen density

Ever November | 8/22/2012 02:09:00 PM | Best Blogger Tips

Android OS သည္ mobile နည္းပညာ တိုးတက္မႈထံ ထူးျခားေသာ လုပ္ေဆာင္ မႈျဖင့္ ခ်ဥ္းကပ္ခဲ့ၿပီး  ကြဲျပားျခားနားေသာ device မ်ား၏ မတူညီေသာ pixel အရြယ္အစားမ်ားကို အဆင္ေျပေျပ လက္ခံႏိုင္ရန္ တည္ေဆာက္ ထားသည္။ ထိုကဲ့သို႔ device မ်ား၏ မတူညီေသာ pixel မ်ားသည္ OS အားေကာင္းေကာင္း အေႏွာင့္အယွက္ေပးႏိုင္ေသာ အခ်က္ ျဖစ္သည္။
ထုိ႔ေၾကာင့္ Apple သည္ ထိုျပႆနာအား ေရွာင္လႊဲႏိုင္ရန္အတြက္ တစ္ႀကိမ္တြင္ model တစ္မ်ဳိးသာ ထုတ္လုပ္ျခင္းျဖစ္သလို ၎၏ OS အား အျခား ထုတ္လုုပ္သူမ်ားအား ေပးမသံုးျခင္း ျဖစ္သည္။ ထို႔ေၾကာင့္ ပစၥည္းထုတ္လုပ္သူမ်ားႏွင့္ ဂရပ္ဖစ္ဒီဇိုင္း ဖန္တီးသူမ်ားသည္ Android OS ၏ ဂရပ္ဖစ္အတြက္ စံ pixel density size ၄ မ်ဳိးထဲမွ ၁ မ်ဳိးအား အသံုးျပဳရန္ လိုအပ္လာသည္။
ထိုစံသတ္မွတ္ခ်က္ ၄ မ်ဳိးမွာ...
၁။ LDPI (low density) : 120 DPI
၂။ MDPI (medium density) : 160 DPI
၃။ HDPI (high density) : 240 DPI
၄။ XHDPI (extra high density) : 320DPI တို႔ ျဖစ္ၾကသည္။
ထို႔ေၾကာင့္ မည္သည့္ device အတြက္ ရည္ရြယ္သည္ျဖစ္ေစ၊ Android အတြက္ ဂရပ္ဖစ္ဒီဇိုင္းမ်ားကို သက္ဆိုင္ရာ တစ္လက္မတြင္ ရွိေသာ အရြယ္အစားအတိုင္းသာ လုပ္ေဆာင္ရန္ လိုအပ္သည္။ ထို႔ေၾကာင့္ ထိုသတ္မွတ္ခ်က္ ၄ မ်ဳိးတြင္ လိုအပ္ေသာ pixel အေရအတြက္အား phone ၏ Screen density ႏွင့္ တြက္ခ်က္၍ ဂရပ္ဖစ္ပံုမ်ား ေရးဆြဲႏိုင္မည္ ျဖစ္သည္။ ထိုအခ်က္မွာ mobile ဂရပ္ဖစ္ ဒီဇိုင္းသမားမ်ားအတြက္ အထူးပင္ အေရးႀကီးေပသည္။ ဖုန္းမ်ား၏ မ်က္ႏွာျပင္ အရြယ္အစားမ်ား မတူညီၾကရာ ထိုအခ်က္ကိုသာ ထည့္သြင္း မတြက္ခ်က္ပါက ဒီဇိုင္းမ်ားမွာ ပံုပ်က္ပန္းပ်က္ ျဖစ္သြားေပလိမ့္မည္။
DPI သည္ တစ္လက္မပတ္လည္တြင္ ရွိေသာ dots အေရအတြက္ျဖစ္ၿပီး PPI (pixel per inch) အေနႏွင့္လည္း သံုးစြဲတတ္သည္။ DP ႏွင့္ Pixel တို႔သည္ display ၏ density ေပၚတြင္ မူတည္၍ တူညီမႈရွိႏိုင္သလို ကြဲျပားမႈလည္း ရွိႏိုင္သည္။ အမ်ားအားျဖင့္ HDPI Screen မ်ားတြင္ 1dp သည္ 1.5 pixel ႏွင့္ ညီမွ်ၿပီး MDPI Screen မ်ားတြင္မူ 1dp သည္1 pixel ႏွင့္သာ ထပ္တူက်မည္ ျဖစ္သည္။ ထို႔ေၾကာင့္ screen desnity ျမင့္မားလာလွ်င္ ပိုမို ၾကည္လင္ေသာပံုကို ရရွိႏိုင္သည္ဟု ေယဘုယ် မွတ္သားႏိုင္မည္ ျဖစ္သည္။
Screen Density ဆိုတာဘာလဲ
Android ဖုန္းတစ္ခု၏ မ်က္ႏွာျပင္ resolution ဆိုသည္မွာ display တြင္ အမွန္တကယ္ ပါဝင္ေသာ pixel အေရအတြက္ျဖစ္ၿပီး density မွာမူ display ၏ သတ္မွတ္ဧရိယာ (ဥပမာ ၁ လက္မပတ္လည္အတြင္း) တြင္ ရွိေနေသာ pixels ပမာဏ ျဖစ္သည္။ ထို႔အျပင္ Android ဖုန္းမ်ား၏ display အရြယ္အစားမ်ားမွာလည္း ကြဲျပားျခားနားမႈမ်ား ရွိေနမည္ ျဖစ္သည္။ Resolution ႏွင့္ density ကို ျမႇင့္တင္လိုက္သည့္တိုင္ display အရြယ္အစားမွာ လိုက္လံ ေျပာင္းလဲရန္ ခက္ခဲမည္ ျဖစ္သည္။ Display အရြယ္အစားတူေသာ device ႏွစ္ခုတြင္ တစ္ခုက 320 x 480 resolution ရွိၿပီး တစ္ခုက 480 x 800 resolution ရွိခဲ့လွ်င္ 480 x 800 resolution ရွိေသာ display မွာ Pixel ပိုမိုမ်ားသလို density လည္း ပိုမုိ ျမင့္မားမည္ ျဖစ္သည္။
Screen အရြယ္အစား ကြဲျပားျခင္း
Android OS သံုး device မ်ား၏ ကြဲျပားျခားနားေသာ Screen size မ်ားေၾကာင့္ Android 1.6 တြင္ပင္ Screen size ၃ မ်ဳိးအား ေထာက္ပံ့ေပးေနရၿပီ ျဖစ္သည္။ အမ်ားဆံုးသံုးၾကေသာ ပံုမွန္စံႏႈန္းမွာ 320 x 480 ျဖစ္ၿပီး (ယခုအခါ 480 x 800  မ်ား) ပိုမ်ားျပားလာခဲ့သည္။ Android 2.3 မွ စတင္လ်က္ xLarge size ကို မိတ္ဆက္ေပးခဲ့ၿပီး ၁၀ လက္မ tablet မ်ားအတြက္ ရည္ရြယ္ခဲ့ကာ Android 3.0 တြင္ ထို x Large size ကို ေကာင္းစြာ ေထာက္ပံ့ေပးခဲ့သည္။
Screen အရြယ္အစားမ်ားကို

xlarge screen 960dp x 720 dp
large screen 640dp x 480 dp
normal screen 470dp x 320 dp
small screen 426dp x 320 dp စသည္ျဖင့္ အနည္းဆံုးရွိရမည္ဟု သတ္မွတ္ထားခဲ့သည္။ Android 3.2 မွ စတင္ကာ ဖန္တီးသူမ်ားအတြက္ လြယ္ကူေစရန္ device မ်ား၏ မ်က္ႏွာျပင္ အရြယ္အစားကို သတ္မွတ္ေသာ နံပါတ္မ်ား ထားရွိေပးခဲ့သည္။ ထိုနံပါတ္မ်ားကို သံုးကာ ဖန္တီးသူမ်ားအေနျဖင့္ U1 ကို သင့္ေတာ္ေအာင္ ညိႇႏိႈင္းႏိုင္မည္ျဖစ္ၿပီး ၎တို႔၏ app မ်ားကို ပိုမို ေကာင္းမြန္လာေစမည္ ျဖစ္သည္။
Screen size မ်ားကို 'dp' ျဖင့္သာ ေဖာ္ျပမည္ျဖစ္ၿပီး ၎တုိ႔မွာ width dp, heightdp ႏွင့္  smallest width dp တို႔ ျဖစ္ၾကသည္။ width dp မွာ လက္ရွိ application အတြက္ သံုးရမည့္အလ်ားျဖစ္ၿပီး screen အား ေဒါင္လိုက္မွ အလ်ားလိုက္ ေျပာင္းလဲလိုက္လွ်င္ လိုက္လံ ေျပာင္းလဲသြားႏိုင္သည္။
Height dp မွာ application အတြက္ လက္ရွိ အျမင့္ပမာဏ ျဖစ္၍ device ကိုလွည့္၍ သံုးပါက လိုက္လံ ေျပာင္းလဲသြားမည္ ျဖစ္သည္။ Smallest width dp မွာ device display ကို လွည့္ပတ္ၾကည့္စဥ္တြင္ ႀကံဳရမည့္ အေသးငယ္ဆံုး ရွိႏိုင္ေသာ ပမာဏျဖစ္ၿပီး အေရးအႀကီးဆံုးလည္း ျဖစ္သည္။ U1 မွာ ေဒါင္လိုက္တြင္ အဆင္ေျပေသာ္လည္း အလ်ားလိုက္တြင္မူ အေနအထား ေျပာင္းလဲသြားမႈေၾကာင့္ အခက္အခဲမ်ား ႀကံဳလာႏိုင္သျဖင့္ ထိုအခ်က္ကိုလည္း ထည့္သြင္း စဥ္းစားရမည္ ျဖစ္သည္။
Net Guide Journal

No comments:

England - Premier League

Italy - Serie A

Spain - Primera Division

Germany - Bundesliga

France - Ligue 1