>> PhoneGap ကိုအသုံးပြီး Eclipse နှင့် Mobile App အလွယ်တကူရေးသားခြင်း အပိုင်း(၂)။

Video File လုပ်ပြီးတင်မလို့ တော်ကြာ မင်းသားလုပ်ဖို့လာ ကမ်းလှမ်းကြမှာ စိုးလို့ :P (အဆင်မပြေ၊ အလုပ်များ လို့) စာနှင့်ပဲ ရေးလိုက်တော့တယ်။  PhoneGap Mobile App ရေးဖို့ လိုအပ်တာတွေ ပြင်ဆင်ပြီးပြီဆိုရင် Eclipse ကိုဖွင့်လိုက်ပါ။
- File > New > Android Application Project ပြီးရင်...
- Application Name & Package Name ပေးပြီး ကျန်တာတွေကို Default အတိုင်းထားပြီး Next နှင့် Finish အထိ သွားလိုက်ပါ။  Android Application Project အသစ်တခု ရလာပါလိမ့်မယ် အဲ့အထဲမှာ PhoneGap အလုပ်လုပ်နိုင်အောင် အောက်ပါ configuration ကိုသတ်မှတ်ပါ။

- assets folder ကို Right Click နှိပ်ပြီး www ဆိုတဲ့ new folder တခုဆောက်ပေးပါ။
- ပြီးရင် www ဆိုတဲ့ folder ကို Right Click နှိပ်ပြီး Import > File System ကနေပြီး download ချထားတဲ့ PhoneGap > lib > android ထဲက cordova.js ဖိုင်ကို ထည့်ပေးပါ။
- ပြီးရင် Android Application Project ထဲက libs folder ထဲကို download ချထားတဲ့ PhoneGap > lib > android ထဲက cordova-2.9.0.jar ဖိုင်ကို ထည့်ပေးပါ။  (Note: Download ချထားတဲ့ PhoneGap Version ပေါ်မူတည်ပြီ cordova နောက်က နံပါတ်တွေက အပြောင်းအလဲ ရှိနိုင်ပါသည်။)
- ပြီးရင် cordova-2.9.0.jar ဖိုင်ကို Right Click နှိပ်ပြီး Build Path > Add to Build Path ကိုရွေးပြီး Referenced Libraries ထဲကိုထည့်ပေးပါ။
- ပြီးရင် Android Application Project ထဲက res folder ကို Right Click နှိပ်ပြီး Import > File System ကနေပြီး download ချထားတဲ့ PhoneGap > lib > android ထဲက xml folder တခုလုံးကို res folder အောက်ထည့်ပေးပါ။
- ပြီးရင် AndroidManifest.xml file ကို Double Click နှင့် ဖွင့်ပြီး AndroidManifest.xml သွားပါ ပြီးရင် အောက်ပါ xml code တွေကို <uses-sdk မတိုင်ခင်မှာ ထည့်ပေးပါ။

<supports-screens android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:resizeable="true"
android:anyDensity="true"
/>

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.RECORD_VIDEO"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />

uses-permission တွေက မလိုရင် မလိုတာကို မထည့်လို့ရပါတယ် လောလောဆယ် အကုန်ထည့်ကြည့်လိုက်ပါ။  ပြီးရင် AndroidManifest.xml ထဲမှာပဲ <activity ထဲက android:label="@string/app_name" နောက်မှာ android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" ထည့်ပေးပါ။

အဲ့ဒါတွေပြီးသွားရင် web page တခုရေးပါ www folder ကို Right Click နှိပ်ပြီး New > Other နှင့် HTML File အသစ်ခု ထည့်လိုက်ပါ File Name ကို index.html လို့ပေးပါ ပြီးရင် title tag အောက်မှာ <script type="text/javascript" src="cordova.js"></script> ထည့်ပါ။  ပြီးရင် body tag ထဲမှာ စာတခုခု ဖေါ်ပြတဲ့ html တခုခု ရေးလိုက်ပါ။  ဥပမာ။
<h4>Hello PhoneGap</h4> အဲ့ဒါတွေပြီးသွားရင် java code အနည်းငယ် ရေးရပါမယ်။  Android Application Project ထဲ src > package name > MainActivity.java ကို Double Click နှိပ်ဖွင့်လိုက်ပါ။  ပြီးရင် အောက်ပါအတိုင်း code တွေကို ပြောင်းလိုက်ပါ။  တချို့ဟာတွေက မလိုအပ်တဲ့အတွက် ဖျက်လိုက်ပါ။

package com.example.samplephonegap;

import android.os.Bundle;
import org.apache.cordova.*;

public class MainActivity extends DroidGap {

 @Override
 public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 super.loadUrl("file:///android_asset/www/index.html");
 }
}

အဲ့ဒီမှာ PhoneGap ကိုသုံးရင် မဖြစ်မနေသိထားရမှာက Android Application Project ထဲက assets folder ကို တကယ် PhoneGap ကသိတဲ့ url က android_asset ပါ အဲ့အတိုင်းရေးရပါမယ်။  အဲ့ဒီ loadUrl မှာ file url ကို အဲ့လို မရေးချင်ဘူးဆိုရင် အောက်ပါအတိုင်းလည်း ရေးလို့ရပါတယ်။

super.loadUrl(Config.getStartUrl());

ဒါပေမယ့် တခု သတိထားရမှာ ကျွန်တော်တို့ရဲ့  HTML File ရဲ့ နာမည်က res > config.xml ထဲက content src ထဲက နာမည်နဲ့မတူရင် error ဖြစ်ပါလိမ့်မယ်။

<content src="index.html" />

အားလုံးပြီးရင် Save လုပ်ပြီး Run menu ထဲက > Run > Android Application ကနေ run ကြည့်ပါ။  အဲ့မှာ run တဲ့အခါ အဆင်ပြေရင် Physical Android Phone ကို စက်မှာ တပ်ပြီး run တာပိုမြန်ပါတယ်။  Eclipse ရဲ့  Android ထဲက Virtual Device လို့ခေါ်တဲ့ emulator ကိုသုံးပြီး run မယ်ဆို အရမ်းကြာပါတယ်။  မိမိ ဖုန်းကို ချိတ်ဆက်ပြီး run မယ်ဆိုရင် Phone ရဲ့  Setting > Developer Options > USB debugging ကို Check လုပ်ပေးရပါမယ်။  ပုံထဲမှာ ပြထားတဲ့အတိုင်း Android Application Project မှာ PhoneGap အလုပ်လုပ်နိုင်အောင် ပြောင်းလဲပေးရမှာပါ။