Friday, November 29, 2013

ඇන්ඩ්‍රොයිඩ් ඇප් වලට ගූගල් මැප් අලවාගන්නා ආකාරය....... දෙක

ඕන්න ඉතින් මේ පෝස්ට් එකේ මුල් භාගේ ලියද්දි අත් රිදෙන්න අරගෙන නැවැත්තුවා නේ.මේ ලියන්නේ ඒකේ ඉතුරු භාගේ.කූමින් කූමින් හරි දැන් ගූගල් මැප් කී එකක් කාගේ කාගේත් අතේ ඇති නේ.ආහ් තා පොඩ්ඩෙන් අමතකම වෙනෝ.අර ගූගල් ප්ලේ සර්විස් එකත් දැන් ඇඩ් කරගෙනනේ ඉන්නේ.ඕන් එහෙනන් අද ඒතැන් සිට....

               
3.Google Services library අපේ project එකට දාගන්න


                                 ඕකට නන් කරන්න තියෙන්නේ මුලින්ම අපි හදාපු ප්‍රොජෙක්ට් එකේ වලට යන එකයි(project එක right click කරල ඒකේ properties).ගිහින් ඒකේ තියෙනවා Android කියාලා එකක්.අන්න ඒකට ගියහම මේන්න මේ වගේ එකක් ඒවි.



                           ඒ වින්ඩෝ එකේ තියෙනවනේ Add කියල බටන් එකක්.අන්න ඒක ඔබන්න එතකොට ඒවි මේන් මේ වගේ වින්ඩෝස් එකක්.


                        ඕකෙන් ගූගල් ප්ලේ සර්විස් කියන එක select කරල ඔක්කෝම ok කර කර යන්න.

4. පර්මිසන් හැදීම....

                    ඔය ගූගල් කියන්නෙත් එක ජාතියක පොරක්ලු නේ.පොර ඔය රටේ ලෝකේ තියෙන ඔක්කොම ලයිබ්බරි අපේ project එකට දාගත්තයි කියල මැප් එක පෙන්නන්නේ නෑලුනේ.ඒකට අපි පර්මිසනුත් හදන්න ඕනේලු.ඕකට ඉතින් අපි යන්න ඕනේ අපේ project එකේ manifest file එකට.ඒක 
තියෙන්නේ මේන් මෙතන


                          ඔන්න ඔය xml file එකෙන් තමයි අපේ application එකේ ගතිගුන හදන්නේ.මේ තියෙන්නේ ඒක පේනවනේ.





                            ඇප් එක නම,පැකේජ් එකේ නම,ඇප් එකේ එක,ඇප් එකට දෙන පර්මිසන් වගේම ඇක්ට්විටි වල විස්තර හිටන් ඕකේ තියෙනවා.ඒකේ පේනවා ඇතිනේ uses-permission කියල ටැග් එකක් තියෙනවා.අන්න ඒකේන් තමයි අපි එකේ පර්මිශන් හදන්න  ඕනේ.ඒ කියන්නේ අපි app එකට මොන වගේ දේවල් කරන්නද ඉඩ දෙන්නේ කියල තමයි පර්මිශන් වලින් කියන්නේ.ඒ කියපුවා තමයි android os එකෙන් app එකට කරන්න ඉඩ දෙන්නේ.
                                                ඔය manifest tag එකේ body එක ඇතුලේ මෙන්න මේ පර්මිසන් ටික පේස්ට කරගන්න.මෙව්වා ටික තමයි මැප් එක පෙන්නගන්න ඕන වෙන්නේ.( package.name කියල තියෙන තැන් වලට ඒ ඒ ඇප් එකේ package name එක දාගන්න නැත්නන් අව්ල් යයි).
<permission
        android:name="package.name.permission.MAPS_RECEIVE"
        android:protectionLevel="signature" />

    <uses-permission android:name="package.name.permission.MAPS_RECEIVE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

ආහ් තව දෙයක් තියේ.අපි අර හද්දා අමාරුවෙන් ගත්ත google map api key එකත් දාන්න තියෙන්නේ මේ manifest file එකටම තමා.ඒකට එකේ application කියන tag එක හොයාගන්න.හොයාගත්තයි?.එහෙනන් ඒකේ body එකේ මෙන්න මේ කියන tag එක පේස්ට කරන්න.කරනකොට android:value කියන එකට අර api key එක දාන්න.

<meta-data
            android:name="com.google.android.maps.v2.API_KEY"
            android:value="your_api_key" />


5. මැප් එක පෙන්නන්න හැදීම....

                                දැන් ඉතින් තියෙන්නේ ටිකක් දරුනු වැඩක්.කොහොමත් අන්තිමට තියෙන්නේ දරුනුම වැඩේ නේ.ඔක්කෝටම කලින් මෙන්න මේ කෝඩ් කෑල්ල කොපි කොරන් හිටියනන් හොදයි.

    <fragment
        android:name="com.google.android.gms.maps.SupportMapFragment"
        xmlns:map="http://schemas.android.com/apk/res-auto"
        android:id="@+id/map"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />






ඔන්න ඔය කොපි කරගත්ත කෝඩ් කැබැල්ල activity_main.xml කියන file එකේ(ඒක තියෙන්නේ res folder එකේ layout කියන folder එක ඇතුලේ) ඉහත දක්වා ඇති ආකාරයට පේස්ට් කර ගන්න(ඒ කියන්නේ relative layout tag එකේ body එක ඇතුලේ).ඕක තමා ඉතින් දරුණු වැඩේ. :p

දැන් ඉතින් MainActivity.java කියන එක ගන්න(src folder එක ඇතුලේ තියෙන්නේ) .ඒකේ extends කියලා තියෙන තැන(පහත ඇති පොටෝ එක නරඹන්න) extend කරලා තියෙන්නෙ Activity වලින් නේ .ඒක අපි වෙනස් කරගන්න ඕනා FragmentActivity කියලා.Google Play Services එක හරියට add කරලා තිබ්බා නන් දෙයියන්ගේ පිහිටෙන් එතන කිසිම error එකක් එන්නේ නෑ.


ඕන්න එහෙනන් ඒ වැඩේ ඉවරයි.දැන් ඉතින් දෙයියො බුදුන් සිහි කරගෙන ඒ හදාගනිපු ඇප් එක රන් කරන්න.(project එක right click කරලා run as එකේ android application කියලා දෙන්න).දැන් ඉතින් මෙන්න මේ වගේ මැප් එක පේන්න ගනීවි.


හැබැයි රන් වෙන්නේ emulator එකේ නන් පොඩ්ඩක් විතර අවුලක් එයි.ඒක හදාගන්න හැටි වෙනම පෝස්ට් එකකින් දාන්නයි හිතන් ඉන්නේ.

එහෙනන් අදට මම නවතිනවා
මීට,
ආදරණීය හෙට්ටියා.

2 comments: