Penang Trip - 1

ပီနန်တံတား 

Raya Haji ပိတ်ရက်သုံးရက်မှာ သူငယ်ချင်းတွေနဲ့ ပီနန်ကို သုံးရက်၂ည ခရီး သွားဖြစ်ခဲ့တယ်။ ပီနန်သွားဖို့စီစဉ်တာ သုံးလေးခါလောက်ရှိပြီ။ နီးမှ အကြောင်းကြောင်းကြောင့် ပျက်သွားတာချည်း။ ဒီတစ်ခေါက်တော့ ကြိုမစီစဉ်ထားဘဲ တစ်ပါတ်လောက်အလိုမှ သွားကြရအောင်ဆိုပြီး ဘတ်စ်ကားလက်မှတ် ကောက်ဝယ်၊ ဟိုတယ်ဘွခ်လုပ်မှဘဲ သွားဖြစ်တော့တယ်။

ဘတ်စ်ကားလက်မှတ်ကို ticket4u.com.my ကနေ ဝယ်လိုက်တယ်။ ကေအယ်လ်ပီနန် အသွားအပြန် တစ်ယောက်ကို ရင်းဂစ် ၇၀ ကျော်ကျော်ဘဲ ကျတယ်။ ဟိုတယ်ကို booking.com ကနေ book လုပ်တယ်။ လေးယောက်ခန်း ၂ညကို ၂၉၆ ရင်းဂစ်။ အဲဒီထက် စျေးသက်သာတဲ့ ဟိုတယ်တွေ၊ ဒီစျေးနဲ့ ဒီထက်ကောင်းတဲ့ဟိုတယ်တွေ ရှိပေမယ့် ဒီတစ်ခုက သွားရလာရ အချက်အချာ တော်တော်ကျလို့ New Asia Heritage Hotel ကိုဘဲ ရွေးလိုက်တယ်။

တစ်ယောက်မှ ပီနန်မရောက်ဖူးတော့ မသွားခင် ကြိုပြီး ဘယ်သွားမယ်၊ ဘာစားမယ်၊ ဘာလုပ်မယ်ဆိုတာ ကြိုတင် အိမ်စာလုပ်ရတယ်။ ပထမဆုံး ကိုတီဇက်အေရဲ့ Penang Trip အပိုင်း ၈ပိုင်း ကို ကျေညက်အောင် အပြန်ပြန် အလှန်လှန် ဖတ်တယ်။ :D Google Maps ကနေ နေရာတွေ၊ လမ်းတွေကို သေသေချာချာ လေ့လာမှတ်သားတယ်။ ဘလော့တွေ လိုက်ရှာဖတ်တယ်။ ဒေါင်းလုတ်လုပ်စရာရှိတာတွေလုပ်တယ်။

ပထမဆုံး ပြဿနာက သွားမယ့် ဘတ်စ်ကားဂိတ်။ အသိတွေကို မေးတယ်။ ဂူဂယ်လ်မှာရှာတယ်။ ဘယ်သူမှ နေရာအတိအကျ မညွန်းပေးနိုင်ဘူးဖြစ်နေတယ်။ အဲဒီနေ့မှ ကြည့်ကြပ်လုပ်ကြမယ်ဆိုပြီးထားလိုက်တာ ဘတ်စ်ကား မလွတ်သွားတာဘဲ ကံကောင်း။ တစ်ခြားဘတ်စ်ကားတွေအကုန်က အဓိက Terminal တွေဖြစ်တဲ့ Puduraya, Pekeliling Express Bus Terminal, TBS ကနေ ထွက်ပေမယ့် Plusliner နဲ့ Nice ကုမ္ပဏီ ၂ခုက KTM old railway station ကနေ စီးရတယ်။ Pasar Seni LRT station ကနေ တံတားကို ဖြတ်လိုက်ရင်ရောက်တယ်ဆိုတော့ ရှာရလွယ်မှာပါ ထင်ထားတာ။ တကယ်သွားမယ့်မနက်ကြမှ ဒုက္ခလှလှတွေ့ရော။ ဟိုလူမေး ဒီလူမေးနဲ့။ တံတားဖြတ်လိုက်ရင် ရောက်တယ်ဆိုပေမယ့် တံတားလည်းဖြတ်ပြီးရော ဆင်းဖို့ လှေကားက အများကြီး ဘယ်ကဆင်းရမှန်းမသိ၊ ထပ်မေးရပြန်ရော။ ၁၀နာရီ ဘတ်စ်ကားထွက်မှာ ဂိတ်ကို ၁၀မိနစ်နောက်ကျမှ ရောက်သွားတယ်။ ဘတ်စ်ကားဆရာက ကားတောင်စက်နှိုးနေပြီ။ မနည်းလိုက်တားပြီး အနောက်က လိုက်လာတဲ့ မရွှေချော သုံးယောက်ကို စောင့်ရတယ်။ အရင်ခေါက် စင်ကာပူသွားတုန်းက ငါးမိနစ်လေးနောက်ကျတာကို ဘတ်စ်ကားတစ်ခေါက် လွတ်သွားဖူးတော့ တော်တော်ကြောက်နေတာ။ ကားပေါ်ရောက်မှဘဲ သက်ပြင်းချနိုင်တော့တယ်။ 



လက်မှတ်ဝယ်ထားတုန်းက ခုံက အနောက်နားမှာပေမယ့် နောက်ကျမှရောက်သွားပြီး လူတွေက ထိုင်ချင်သလိုထိုင်နေကြတော့ လွတ်တဲ့ခုံ ဝင်ထိုင်လိုက်ရတယ်။ ကံကောင်းစွာနဲ့ double-decker bus ရဲ့ အပေါ်ထပ် ရှေ့ဆုံးခုံမှာရတယ်။ မလေးရှားမှာက မြန်မာပြည်လောက် သစ်ပင်မခုတ်တော့ တစ်လမ်းလုံး တောတွေ တောင်တွေက စိမ်းစိမ်းလန်းလန်း ရှိသေးတယ်။ ဘိလပ်မြေစက်ရုံတွေနားမှာတော့ တောင်တွေ ဖြိုထားတယ်။

လမ်းမှာ အစားအသောက် ဝယ်လို့ရမယ်ထင်ပြီး မနက်က ဘာမှ မစားခဲ့တာ မှားသွားတယ်။ ကားရပ်နားစခန်း သေးသေးတစ်ခုမှာ မိနစ် ၂၀လောက်ဘဲ ရပ်ပေးတယ်။ ဗိုက်ကတော့ တော်တော့်ကို ဆာနေပေမယ့် စားစရာကလည်း အသီးအနှံတစ်မျိုးဘဲရောင်းတော့ ရှိတာလေး ဝယ်စားပြီး ခရီးဆက်ခဲ့ရတယ်။ မနက်၁၀နာရီလောက် ကေအယ်လ်က ထွက်ခဲ့တာ နေ့လည် ၂နာရီခွဲလောက်မှာ ပီနန်ကျွန်းက Sg. Nibong Bus Terminal ကို ရောက်တယ်။ မြို့ထဲသွားမယ့်ဘတ်စ်တွေ ဒီ terminal ထဲထိ ဝင်ရပ်ပေးတယ်။ တည်းမယ့်ဟိုတယ်က Georgetown က Komtar နားမှာ။ တက္ကစီတွေက ရင်းဂစ်၂၀တောင်းတယ်။ ဘတ်စ်ကားနဲ့ဆိုရင် ၁ကျပ်ပြားလေးဆယ်။ မိနစ်၂၀လောက်နဲ့ Komtar ကိုရောက်တယ်။ ရောက်တာနဲ့ ဟိုတယ် check-in မလုပ်ခင် 1st Avenue Mall ထဲဝင်ပြီး နေ့လည်စာ အရင်စားရတယ်။ 

ပီနန်ကျွန်းက တော်တော်လေးကို tourist-friendly ဖြစ်ပါတယ်။ တိုးဂိုက်တွေဘာတွေမလိုဘဲ ဒီတိုင်းလျှောက်သွားလို့ရတယ်။ ဘတ်စ်ကားတွေလည်း အချိန်မှန်မှန်ဆွဲတယ်။ တက္ကစီတောင် သိပ်စီးဖို့ မလိုဘူး။ ၂ညအိပ် သုံးရက်အတွင်း ရောက်ဖြစ်ခဲ့တဲ့ နေရာတွေကတော့ 


Day 1
- Fort Cornwillis ခံတပ်, Penang Esplanade, Penang City Hall
- Gurney Drive ဟော်ကာစင်တာ
Day 2
- ပီနန်တောင်, Kek Lok Si ဘုရားကျောင်း
- Batu Ferringi ကမ်းခြေ၊ ညစျေး
- Koo Kongsi Festival of lights
Day 3
- Penang Toy Museum
- Heritage walk around the town
- A search for Penang street arts
ဖြည်းဖြည်းချင်း အသေးစိတ် ရေးသွားပါမယ်။ :)


A long weekend with lots of food and Yakju

ခေါင်းစဉ်ဖတ်ပြီး မူးသွားပြီလား? စာဖတ်ပြီးရင် ပိုမူးသွားဖို့ရှိတယ်။ hee :D

သောကြာနေ့က မလေးရှားနိုင်ငံရဲ့ လွတ်လပ်ရေးနေ့ (မာဒေးကား)ဆိုတော့ ရုံးပိတ်တဲ့အတွက် စနေတနင်္ဂနွေ နဲ့ဆက်သွားပြီး ပိတ်ရက်သုံးရက်ဖြစ်သွားတယ်။ ခါတိုင်း ပိတ်ရက်ဆို အချိန်က ဘယ်လိုကုန်သွားမှန်း မသိနိုင်အောင် အချိန်မလောက်ဖြစ်ပေမယ့် ဒီသုံးရက်ကြတော့ အလွန့်အင်မတန်ကို ရှည်လျားလွန်းသွားတယ်။ သူငယ်ချင်းတွေ တော်တော်များများ မြန်မာပြည်ပြန်နေတော့ အပြင်မထွက်ဖြစ်တော့ဘူး။ သုံးရက်စာ စားစရာကလည်း ရှိနေတော့ စျေးလေးတောင် မသွားဖြစ်ဘူး။ ပထမတစ်ရက်ကတော့ အိမ်ရှင်မကြီးပီပီ နှစ်ပါတ်လောက်ပစ်ထားတဲ့ အိမ်ကို သန့်ရှင်းရေးလုပ်ရတယ်။ သုံးလလောက် ပစ်ထားတဲ့ ရေခဲသေတ္တာကို defrost လုပ်ရတယ်။ freezer compartment ရဲ့ တစ်ဝက်နီးနီးလောက် ရေခဲတွေ ဖြစ်နေတာ :D ပြီးတော့ ကြမ်းတိုက် အဝတ်လျှော်၊ ဖတ်ဖတ်ကိုမော။ 
.
နေ့တိုင်းလိုလို နေ့တစ်ဝက်လောက်အိပ်တယ်။ ဟင်းချက်တယ်၊ စားတယ်၊ ဘာလုပ်ရမလဲစဉ်းစားတယ်။ ကျောက်ကျောမှုန့်ရယ် အုန်းသီးမှုန့်ရယ်တွေ့တော့ ကျောက်ကျောကျိုတယ်၊ စားတယ်။ ကြာဇံချက်တယ်၊ စားတယ်။ ပျင်းနေသေးတယ်။ ကြက်ဥတွေတွေ့တော့ ပူတင်းဖုတ်တယ်။ (pudding caramel လို့ရှာရင် custard နဲ့ recipe တွေဘဲထွက်လာတယ်။ နောက်ဆုံးမှ Flan လို့ခေါ်မှန်းသိတယ်။) ဘာဘဲဖြစ်ဖြစ် သူများလုပ်တာဘဲ ဘေးကနေလိုက်ကြည့်တာနဲ့စာရင် ကိုယ့်ကိုယ် လုပ်တတ်သွားတယ်။ သကြားဖြူဖြူကနေ ညိုမှ ညိုလာပါ့မလားလို့ ရင်တထိတ်ထိတ်နဲ့ မွှေလိုက်ရသေးတယ်။ အညိုလွန်သွားပြီး နည်းနည်း တူးချင်ချင် ဖြစ်သွားတယ်။ ကြက်ဥ၊ နွားနို့၊ နို့ဆီ၊ နို့စိမ်း ရောမွှေပြီး ခွက်လေးတွေထဲလောင်းချ၊ oven ထဲ ထည့်ဖုတ်၊ တော်တော်စားကောင်းတယ် :D 
.
ဒီနေ့မနက်က အဖေ့ရဲ့ recipe နဲ့ နကထိုင် စမ်းလုပ်ကြည့်တယ်။ အိမ်မှာ အမြဲ ဘေးကကြည့်နေတော့ ငါလုပ်တတ်ပြီလို့ထင်ပေမယ့် လုံးဝ တစ်လွဲ ထွက်လာတယ်။ မွမွလေးဖြစ်ရမှာကို ကျစ်ကျစ်ကြီး ဖြစ်နေတယ်။ နကထိုင်လုပ်တာ ဘီစကစ်နီးနီး ဖြစ်သွားတယ်။ စားလို့တော့ကောင်းတယ် :D အပေါ်ကရေးတာတွေက တစ်ရက်တည်းစားတာ မဟုတ်ဘူးနော်။ သုံးရက်စာပေါင်းရေးလိုက်တာ။ သုံးရက်အတွင်း အစား တော်တော်စုံသွားတယ်။ ခုတလေ မEvy ရဲ့ ဘလော့ဂ်ကို ဖတ်ဖတ်ပြီး မုန့်ဖုတ်တာ ဓါတ်ကျနေတယ်။ Apple Muffin နဲ့ butter cake စမ်းလုပ်ကြည့်တယ်။ နည်းနည်းတော့ လွဲနေသေးပေမယ့် စားလို့တော့ ဖြစ်တယ်။
.
သေချာပြန်စဉ်းစားကြည့်လိုက်တော့ ထောပါတ် ၂၀၀ဂရမ်တစ်တုံးဝယ်ထားတာကို မုန့်လုပ်ပြီး စားပစ်တာ တစ်ပါတ်အတွင်းကုန်သွားတယ်။ ဗိုက်ထဲဝင်သွားတဲ့ အဆီတွေ၊ ကိုလက်စထရောတွေ တွေးကြည့်ရင် မနည်းမနောဘဲ။ ဒီတိုင်းဆက်စားနေရင်တော့ တော်တော်ဝလာလိမ့်မယ်။ personal ပို့စ်တွေ သိပ်ရေးလေ့မရှိပေမယ့် ဒီနေ့က အလွန့်အင်မတန် ပျင်းနေပြီး တစ်ခုခု ရေးချင်စိတ် ပေါက်သွားတယ်။
စားတယ်၊ သောက်တယ်၊ မုန့်လုပ်တယ်၊ ဟင်းချက်တယ်၊ မြန်မာကားကြည့်တယ်၊ ကိုးရီးယားဇာတ်လမ်းတွဲ Gumiho ပြီးသွားတယ်။ အင်္ဂလိပ် စီးရီးစ် “New Girl” season 1 လည်း ပြီးသွားတယ်။ ဆက်ကြည့်စရာ ရုပ်ရှင်လည်းကုန်ပြီ၊ မုန့်လုပ်လို့လဲဝပြီ။ လူက ပျင်းနေတုန်းဘဲ။ အဲဒီလို တစ်အားပျင်းပြီး လုပ်စရာမရှိတော့မှ Galaxy Nexus ဖုန်းကို yakju ROM flash လုပ်ဖို့ စိတ်ကူးပေါက်လာတယ်။ 

လုပ်မယ် လုပ်မယ်နဲ့ အပျင်းကြီးနေတာ ငါးလကျော်သွားပြီ။ yakju တို့ yakjuxw တို့ takju တို့ဆိုတာက Galaxy Nexus အတွက် official ROM (factory image) တွေရဲ့ နာမည်တွေပါ။ အစက အမှုမဲ့ အမှတ်မဲ့ပါဘဲ။ official update ထွက်တိုင်း သူငယ်ချင်းတစ်ယောက်က အရင် ရရနေပြီး သူ့ဖုန်း update ရပြီး တော်တော်ကြာမှ သဉ္ဇာ့ဖုန်း update ရပါတယ်။ Google ကပေးတဲ့ official update တွေကို တစ်ခြားဖုန်းတွေထက် အရင်ရချင်လို့ Galaxy Nexus ဝယ်ထားပါတယ်ဆို ခုဟာက ဖုန်းချင်းအတူတူ (သူတောင် နောက်မှဝယ်တာကို) update ကြတော့ ခွဲခြား ခွဲခြား လုပ်ခံရတော့ စိတ်မရှည်တော့ဘူး။ :D နည်းနည်းပါးပါး Google လိုက်မှ ကိုယ့်ဖုန်းက yakjuxw ဖြစ်နေပြီး သူငယ်ချင်းဖုန်းက yakju ဖြစ်လို့ update ထွက်တိုင်း သူအရင်ရနေတာ။


Takju vs Yakju vs Yakjuxw
Galaxy Nexus အတွက် Google ကထုတ်တဲ့ Factory Image က Yakju လို့ခေါ်ပါတယ်။ Yakju မှာ Google Wallet ပါတစ်ခါတည်း ထည့်ထားရင် Takju ဖြစ်သွားပြန်ပါတယ်။ Yakju နဲ့ Takju ROM ပါတဲ့ ဖုန်းတွေက Google ကနေ update ထုတ်တိုင်း Google Server ကနေ တိုက်ရိုက် ရပါတယ်။ သို့ပေမယ့် Samsung က အဲဒီ yakju ကို ယူ၊ localized setting ဘာညာသာရကာလေး ပေါင်းထည့်ပြီး ပြန်ဖြန့်တော့ yakjuxw ဖြစ်သွားတယ်။ အဲဒီတော့ကာ Google ကထုတ်တဲ့ update က local Samsung branch ကို အရင်ရောက်မယ်။ အဲကနေတဆင့် ထည့်ချင်တာတွေထပ်ပေါင်းထည့်ပြီးမှ centralize ဆာဗာမရှိတော့ telco တွေကို ပို့တယ် (တစ်ခြားနိုင်ငံတော့ မသေချာပါ။ မလေးရှားမှာတော့ အဲလို။) ပုံမှန်ကြာချိန်ထက် အနည်းဆုံးတစ်လလောက် ပိုကြာသွားပါတယ်။ ကံကောင်းချင်တော့ yakjuxw ဖုန်းတွေကို yakju ROM flash လုပ်ဖို့ နည်းလမ်းဖတ်လိုက်မိပါတယ်။ အဲဒါကို ပြောင်းမယ်ပြောင်းမယ်လုပ်နေတာ ခုလို အလွန့်အလွန် အားမှဘဲ ပြောင်းဖြစ်သွားတယ်။ 


ဒီ Easiest Way to Change Galaxy Nexus from Yakjuxw (Non-Yakju) to Android 4.1.1 Yakju/Takju ဆိုတဲ့ article တော်တော် ပြည့်စုံ ပြီး ရှင်းပါတယ်။ သူများတွေ step-by-step သေချာရေးပေးထားတာကို လိုက်လုပ်တာတောင် နည်းနည်းကြာသွားတယ်။ ဖုန်းကတော့ ခုမှ သန့်ရှင်းသွားတယ်။ အစက တွေ့သမျှ apps တွေသွင်းထားတော့ home screen ငါးမျက်နှာက icon တွေ လုံးဝအပြည့်။ app တစ်ခုခုဆို မနည်းတောင် ရှာယူရတယ်။ uninstall တွေ လုပ်ဖို့လိုနေပေမယ့် မလုပ်ဖြစ်နေတာ။ ခုတော့လည်း လုံးဝကို ပြောင်ရှင်းသွားရော။ မနည်းပြန်သွင်းရမယ်။ Jelly Bean OTA လည်းရပြီ။ Wifi network တောင်းနေလို့ နက်ဖြန် ရုံးရောက်မှဘဲ သွင်းရတော့မယ်။ တနင်္ဂနွေနေ့မှာ တနင်္လာ ရောက်ချင်တာ ဒီတစ်ခေါက်ဘဲ ရှိဖူးသေးတယ်။ နက်ဖြန် မိုးရွာမလားမသိဘူး :D


Near Field Communication (NFC)

NFC ဆိုတာ
မကြာမှီ နှစ် အနည်းငယ် အတွင်းမှာ လက်ကိုင်ဖုန်းတစ်လုံးဟာ သင့်ရဲ့ ပိုက်ဆံအိတ်၊ credit card တွေရဲ့ နေရာမှာ အစားထိုးဝင်ရောက်လာမယ်၊ လက်ကိုင်ဖုန်းကို tap လိုက်တာနဲ့ လိုချင်တဲ့ သတင်းအချက်အလက်တွေ ရစေမယ့် နည်းပညာတစ်ခုကတော့ Near Field Communication (NFC) ပါဘဲ။ NFC ဟာ ကြိုးမဲ့ ဆက်သွယ်ရေးစနစ် (wireless technology) တွေထဲက တစ်ခုဖြစ်ပြီး ခုနောက်ပိုင်းမှာ Android ရဲ့ NFC-support ကြောင့် ပိုပြီး ရေပန်းစားလာခဲ့ပါတယ်။

NFC ဟာ (short range wireless − အကွာအဝေးအတိုအတွင်းသာ အလုပ်လုပ်တဲ့ ကြိုးမဲ့ နည်းပညာ ဖြစ်ပြီးသီအိုရီအရတော့ ၁၀စင်တီမီတာ အကွာအဝေးအတွင်း အလုပ်လုပ်တယ်လို့ ဆိုပါတယ်။ ပုံမှန်အားဖြင့်တော့  ၁ မှ ၄ စင်တီမီတာအတွင်းသာ စွမ်းဆောင်ရည်ကောင်းပါတယ်။  13.56MHz အတွင်းမှာ operate လုပ်ပြီး communicatin protocol ရယ် data exchange format ရယ်က RFID (Radio Frequency Identification) ရဲ့ စံနှုန်းတွေကို လိုက်နာ ပါတယ်။ (RFID ကတော့ 125MHzလှိုင်းမှာ အလုပ် လုပ်ပါတယ်။) မြန်နှုန်း(speed) အနေနဲ့ကတော့ 106-414kbps သာ ရှိပါတယ်။

NFC နည်းပညာ ကို ဘယ်လိုနေရာတွေမှာသုံးလာကြမလဲ?

NFC chip ထည့်ထားသော ပိုစတာ၊ ပရိုမိုးရှင်း ကူပွန်နှင့် ရှော့ပင်းစင်တာ
(photo courtesy to original owners)

နေရာ NFC ဖုန်းနဲ့ tap လိုက်ရင်
ဘတ်စ်ကားမှတ်တိုင်မှာ ဘတ်စ်ကားအချိန်စာရင်း
ပြတိုက်မှာ ပြခန်းပစ္စည်းတစ်ခုရဲ့ အကျဉ်းချုပ် သို့မဟုတ် အကျယ်လေ့လာနိုင်တဲ့ website URL ကို တစ်ခါတည်း ဖွင့်ပေးမယ်။
ကုန်ပစ္စည်းကြော်ငြာ − ၄င်းကုန်ပစ္စည်းရဲ့ ဝက်ဘ်ဆိုဒ် သို့မဟုတ် ပရိုမိုးရှင်း ကူပွန်
free Wifi ဆိုတဲ့ sign wifi password ရှိခဲ့ရင် အော်တို authenticate လုပ်ပေးပြီး သင့်ဖုန်းကို အင်တာနက် ချိတ်ပေးမယ်။
ကုန်ပစ္စည်း/ ဝန်ဆောင်မှုလုပ်ငန်း ကိုယ့်ရဲ့ facebook page ကို အော်တို like စေမယ်။
အခြား NFC စွမ်းဆောင်ရည် ပါဝင်တဲ့
လက်ကိုင်ဖုန်း tablet အချင်းချင်း
ဓါတ်ပုံ၊ လိပ်စာကဒ်၊ သီချင်း၊ youtube link စသည်ဖြင့်…
check-in ဘယ်နေရာရောက်ရောက် check-in ကြတဲ့ခေတ်မှာ ရောက်နေတဲ့ နေရာကို တကူးတက ရှာစရာမလိုတော့ဘဲ tap လိုက်တာနဲ့ check-in လုပ်နိုင်တော့မှာပါ။
Mobile Payment Paypal ကလည်း သူ့ရဲ့ commercial NFC service ကို UK မှာ စတင် launch လုပ်ထားပါတယ်။ Google ကလည်း Google Wallet ဆိုတဲ့ application ကို ထုတ်လုပ်ခဲ့ပြီး credit card ကို NFC ဖုန်းကနေတဆင့် သုံးနိုင်အောင် လုပ်ထားပါတယ်။ (ICS ဖုန်းတိုင်းတော့ သုံးလို့ မရသေးပါဘူး။ yakju နဲ့ takju build ဖုန်းတွေဘဲ သုံးလို့ ရဦးမှာပါ။)

Android နှင့် NFC

NFC ကို စသုံးခဲ့တာ Android မဟုတ်ပေမယ့် Android ကြောင့် NFC က ပိုအသုံးဝင်လာခဲ့တယ်လို့ ဆိုနိုင်ပါတယ်။ (နိုကီယာ ဖုန်းတော်တော်များများမှာ NFC ထည့်သွင်းထားတာ တွေ့ရပေမယ့် developer အတွက် API ကောင်းကောင်းမရှိတော့ သိပ် အသုံးတွင်ကျယ်ဟန် မရပါဘူး။ iOS မှာတော့ iPhone 4S ထိ NFC support ပါမလာသေးပါဘူး။ iOS6 မှာ ထည့်သွင်းလာမယ်လို့ ခန့်မှန်းကြပါတယ်။) Android 2.3, Gingerbread မှာစပြီး NFC support ထည့်သွင်းခဲ့ပြီး ပထမဆုံး NFC-enabled Android ဖုန်းကတော့ Google ရဲ့ Nexus S ဖြစ်ပါတယ်။ ဒါပေမယ့် စစချင်းမှာ NFC tag တွေကို ဖတ်နိုင်တဲ့ စွမ်းဆောင်ရည်ဘဲ ပါလာသေးပါတယ်။ Android 2.3.3 မှာမှ NFC read/write နည်းပညာ စတင်မိတ်ဆက်ခဲ့ပါတယ်။ Android 4.0 နဲ့ ပထမဆုံးထွက်လာတဲ့ Galaxy Nexus ဖုန်းမှာတော့ “Android Beam” ဆိုတဲ့ technology ကို စတင်ထည့်သွင်းခဲ့ပါတယ်။ Android beam ကြောင့် NFC ပါတဲ့ ဖုန်းအချင်းချင်း data sharing လုပ်လို့ရနိုင်လာပြီး data format ကို NDEF message လို့ခေါ်ပါတယ်။ data ဆိုတဲ့နေရာမှာ ဓါတ်ပုံ၊ သီချင်း၊ လိပ်စာကဒ်၊ Google Play URL, youtube URL, website URL စသဖြင့်ပါဝင်ပြီး ဖုန်းရဲ့ ကျောဘက်ချင်း tap(ထိ) လိုက်တာနဲ့ share လုပ်လို့ရပါတယ်။ Sony Xperia SmartTags ဆိုတဲ့ ကြော်ငြာကိုကြည့်ရင် Sony ရဲ့ XperiaS နဲ့အတူ NFC ကို တွင်တွင်ကျယ်ကျယ် မိတ်ဆက်လာတာကို တွေ့ရမှာပါ။

NFC chips/ NFC stickers/ NFC tags


နမူနာ NFC chips/stickers/tags များ
NFC အသုံးပြုတဲ့နေရာမှာ active target နဲ့ passive target ဆိုပြီး နှစ်မျိုးရှိပါတယ်။ NFC chip ထည့်သွင်းထားတဲ့ smartphone/tablet/otherdevices တွေဟာ Active target တွေပါ။ Passive target ကတော့ NFC sticker တို့ NFC tags တို့ပေါ့။ Android 2.3.3 ကနေစပြီး NFC write support ပါလာတဲ့အတွက် ဖုန်းကို အသုံးပြုပြီး NFC tags/sticker တွေကို read/write လုပ်လို့ရပါပြီ။ Tags နဲ့  sticker တွေက rewritable ပါ။ read-only ဖြစ်အောင် lock လုပ်လို့ရပါတယ်။ တစ်ခါ lock ပြီးတာနဲ့ ပြန် unlock လုပ်လို့မရတော့တာကိုတော့ သတိထားပါ။ Samsung ဖုန်းတွေမှာ NFC chip ကို ဘက်ထရီနဲ့ တွဲလျက် ထုတ်ပြီး LG ကတော့ back cover မှာ NFC chip ကို ထည့်ထားပါတယ်။ ကျမလည်း ဘက်ထရီနဲ့ တွဲထုတ်ထားတာကို သဘောမကျလှပါဘူး။ ဘက်ထရီလဲချင်တဲ့အချိန်ကြရင် ဒုက္ခရောက်ပါတယ်။ 

NFC နှင့် ဖုန်းလုံခြုံရေး အန္တရာယ်

NFC နည်းပညာ အသုံးပြုတာ တွင်ကျယ်လာတဲ့အခါ နောက်ဆက်တွဲ ပါလာနိုင်မယ့် အန္တရယ်တွေကိုလည်း သတိပြုသင့်ပါတယ်။ ဖြစ်နိုင်တာတွေကတော့ 

၁။ Eavesdropping − ကြားထဲကနေဖြတ်ပြီး ဒေတာခိုးယူမှု ဖြစ်လာနိုင်တယ်။ 

၂။ Data Manipulation − အလယ်ကနေဖြတ်ပြီး ဒေတာတွေ ပြောင်းပစ်နိုင်တယ်။ စိတ်ကြိုက် ခြယ်လှယ်နိုင်တယ်။ 
၃။ NFC ဖုန်းတွေဆီ ဗိုင်းရပ်စ် ဖြန့်ရတာ ပိုမို လွယ်ကူလာမယ်။ 
၄။ ဖုန်းပျောက်သွားခဲ့မယ်ဆိုရင် မိမိရဲ့ credit card information ပါတစ်ခါတည်း ပါသွားနိုင်တယ်။ 

ဒါတွေမယ့် အပေါ်မှာ ပြောသွားတဲ့ အန္တရယ်တွေကို ကာကွယ်နိုင်တာ မိမိကိုယ်တိုင်ဘဲ ဖြစ်ပါတယ်။
၁ နဲ့ ၂ အတွက်ကတော့ NFC ဟာ ၅စင်တီမီတာလောက်အတွင်းမှာသာ အလုပ်လုပ်တဲ့အတွက် သေချာ ဂရုတစိုက် သတိထားရင် အခြားသူတွေ ကြားဖြတ်ပြီး ဒေတာခိုးယူတာ/ ခြယ်လှယ်တာတွေ မဖြစ်နိုင်တော့ပါဘူး။
၃။ မိမိ စိတ်မချတဲ့ NFC target တွေကို tap မလုပ်ဘူးဆိုရင် virus ကူးတာကနေ ရှောင်ရှားနိုင်မှာပါ။ ဖုန်းထဲမှာ anti-virus တစ်ခုခု သွင်းထားပါ။ 
၄။ NFC ဟာ ဖုန်းရဲ့ screen lock ဖြစ်နေရင် အလုပ်မလုပ်ပါဘူး။ screen ကို ဖွင့်လို့မရရင် credit credit/Google Wallet တွေ သုံးနိုင်မှာ မဟုတ်ပါဘူး။ ဒီတော့ screen unlock အတွက် password-protect/pattern lock လုပ်ထားသင့်ပါတယ်။

NFC ကို စမ်းသပ်ခြင်း 


NFC tags from tagsfordroid
Galaxy Nexus မှာ NFC support ပါလာတော့ Nexus သုံးတဲ့ အခြားသူငယ်ချင်းတစ်ယောက်နဲ့ အတူ စမ်းသပ်ကြည့်ဖို့ www.tagsfordroid.com ကနေ NFC tags ၁၀ခုကို ပို့ခအပါအဝင် US$ 20နဲ့ မှာလိုက်ပါတယ်။ ကံကောင်းချင်တော့ တစ်ပါတ်အတွင်းရပါတယ်။ စမ်းသပ်ထားသလောက်တော့

၁။ ဖုန်းအချင်းချင်း Android beam နဲ့ contact sharing လုပ်ကြည့်ပါတယ်။ ဖုန်း၂ခုလုံး NFC ဖွင့်၊ ဖုန်းတစ်ခုက share ချင်တဲ့ contact ကိုဖွင့်ပြီး နောက်ဖုန်းတစ်ခုကို ကျောဘက်ချင်း tap လုပ်လိုက်တဲ့အခါ ဟိုဘက်ဖုန်းထဲကို contact card/business card တစ်ခုလုံး share ပြီးသား ဖြစ်သွားပါတယ်။
၂။ Youtube app ကနေ ဗီဒီယိုတစ်ခု ဖွင့်ထားပြီး အခြားဖုန်းကို tap လိုက်ရင် သူ့ဖုန်းထဲမှာ အဲဒီ ဗီဒီယိုကို အလိုအလျောက် ဖွင့်ပေးပါတယ်။
၃။ Game တစ်ခု ကစားနေတဲ့အချိန် နောက်ဖုန်းတစ်ခုကို tap လိုက်ရင် သူ့ဆီမှာ အဲဒီgame ရှိခဲ့ရင် တစ်ခါတည်း ဖွင့်ပေးပြီး မရှိခဲ့ရင် Google Play ကို တစ်ခါတည်း ခေါ်သွားပါတယ်။
၄။ Google Play ကနေ NFC Quick Actions ဆိုတဲ့ app ကို သွင်းပြီး tags တွေကို စမ်းရေးကြည့်ပါတယ်။ Application, ဖုန်းနံပါတ်, foursquare check-in location, ကင်မရာ flash မီးအဖွင့်အပိတ်, အီးမေးလ်, sms, Google maps, maps navigation, settings, plain text, website URL, Wifi hotspot+password စသဖြင့် အစုံရေးလို့ရပါတယ်။ ကျမတို့ မှာထားတဲ့ tags က မမ်မိုရီ 768 bytes ရှိပါတယ်။ tags တစ်ခုနဲ့တစ်ခု ရေးလို့ရတဲ့ memory ကွာပါတယ်။ မဝယ်ခင် သေချာစစ်ပါ။ tag တစ်ခုကို business card လုပ်ထားပါတယ်၊ အခြား tag တွေကိုတော့ settings ထည့်ရေးထားပါတယ်။ ဥပမာ− ရုံးမှာထားတဲ့တစ်ခုက ဖုန်းအသံလျော့တယ်၊ vibrate on တယ်၊ wifi ဖွင့်ပါတယ်။ tap လိုက်တာနဲ့ ကိုယ်ထည့်ရေးထားတဲ့ settings အကုန်လုပ်ပေးသွားမှာပါ။ 

NDEF message တွေ ဘာတွေကိုတော့ သေချာ မလေ့လာရသေးပါဘူး။ အရင်နှစ် Google I/O မှာ ပြောသွားတဲ့ How to NFC ကိုလည်း စိတ်ဝင်စားရင် ကြည့်သင့်ပါတယ်။ တော်တော်ပြည့်ပြည့်စုံစုံ ရှင်းပြသွားတာပါ။ Google Wallet app ကလည်း မလေးရှားအတွက် available မဖြစ်သေးတော့ စမ်းကြည့်လို့မရပါဘူး။ Technical articles တွေ မရေးတာ ကြာတော့ ဒီတစ်ပုဒ်ရဖို့ တော်တော် ရေးယူလိုက်ရပါတယ်။ LG Optimus 4X HD တို့ Sony Xperia S တို့ဝယ်ရင် NFC tags လေးတွေပါ တစ်ခါတည်း ပေးတယ်လို့တော့ ဖတ်ရတယ်။ S3 ရဲ့ feature တစ်ခုဖြစ်တဲ့ S-Beam ဆိုတာလည်း NFC ပါ။   နောက်ထွက်တဲ့ ဖုန်းတွေတော့ အားလုံးနီးပါး NFC support လုပ်လာလောက်ပါတယ်။ 

ကိုးကား။ ။
၁။ What is NFC and why do we care? (Engadget)
၂။ NFC Security Risk
၃။ Near Field Communication (Wikipedia)
၄။ Android API 2.3.3
၅။ Android API 4.0
၆။ List of NFC-enabled handsets (Wikipedia)


Handling Android screen orientation and splash screen

Sometimes, tiny little things can give the developer a big headache. I was developing a webview application to cater for both portrait and landscape layout. I created layout-land folder and create the same XML with webview there, but referencing to different splash screen image. The problem is, When I rotate, the app will restart. I tried to search thru stackoverflow for many hours, found this. Most of them suggested me to add "android:configChanges="orientation|screenSize"" in AndroidManifest like below.

            < android:name=".MyActivity"
            android:label="@string/title_activity_myactivity"
            android:configChanges="orientation|screenSize" android:screenOrientation="unspecified" >
But, my application target was 2.2 and it doesn't allow me to add "orientation" in "android:configChanges". Later, I changed the application to target 4.0, only then it works. The app won't restart anymore when the orientation changes. And overwrite the following method in the Activity.

//must override this, if not, screen orientation will make the app force close
    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        // TODO Auto-generated method stub
        super.onConfigurationChanged(newConfig);
    }
Some other things i learnt from my previous project:

1. To remove the title bar from the app (AndroidManifest.xml)

        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.NoTitleBar" >
2. the great splash screen example: Android Splashscreen done right

Normally, webview loading is a little slow. And if you create the splashscreen as a separate activity, it won't solve the problem of webview loading slow. The above example use "SplashDialog", which will load webview at the same time as the splashscreen.

*Note: the above orientation handling doesn't seem to work with jquery mobile