วันพุธที่ 2 มีนาคม พ.ศ. 2554

Android: Obtaining a Maps API Key

Obtaining a Maps API Key

สำหรับเพื่อนนักพัฒนาแอพพลิเคชั่นบนแอนดรอยที่จะใช้งาน Google Map API นั้นเราจำเป็นต้องใช้ Map API Key เพื่อใส่ในโค้ด xml นั้นหละครับ หากเพื่อนๆ คนไหนลืมวิธีการได้มาซึ่ง Map API Key ผมเขียนบทความนี้เพื่อสิ่งนี้เลย (กันลืมครับ)

เริ่มแรก

เราต้องได้ MD5 ของเครื่องมาก่อน โดยการใช้ keytool ของจาวา ด้วยคำสั่งดังนี้

$ keytool -list -alias androiddebugkey \
-keystore <path_to_debug_keystore>.keystore \
-storepass android -keypass android


path ของ debug.keystore

  • Windows Vista: C:\Users\<user>\.android\debug.keystore

  • Windows XP: C:\Documents and Settings\<user>\.android\debug.keystore

  • OS X and Linux: ~/.android/debug.keystore


Ref: http://code.google.com/android/add-ons/google-apis/mapkey.html



เมื่อเรากดคำสั่งแล้วจะได้ค่า MD5 ของเครื่องมาครับ ตัวอย่างรูปแบบเป็นดังต่อไปนี้

94:1E:43:49:87:73:BB:E6:A6:88:D7:20:F1:8E:B5:98


ขั้นตอนที่ 2

เข้าไปที่ : http://code.google.com/android/maps-api-signup.html


กดเลือก I have read... แล้วใส่ MD5 ที่ได้มาจากขั้นตอนแรก ลองช่องกรอก แล้วกด 'Generate API Key'


แล้วเราจะได้ API Key หน้าตาดังนี้




0r8JuS0pB2yqLIKQ_Ejz-vSBCCareybmcWwnsv9Q



ขั้นตอนที่ 3

เรานำ API Key ที่ได้ไปใส่ใน xml ของ com.google.android.maps.MapView ดังต่อไปนี้ (ใส่แทนข้อความสีแดง)

<com.google.android.maps.MapView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:enabled="true"
android:clickable="true"
android:apiKey="example_Maps_ApiKey_String"
/>


เท่านี้ก็เป็นอันเสร็จพิธีการทำคีย์เพื่อใช้งาน Google Map API บน android แล้วครับ หวังว่าเพื่อนคงจะไม่ลืมวิธีกันนะครับ หากลืมก้อกดบล็อกนี้เข้ามาดูอีกครั้งได้เลย

adaydesign :)

4 ความคิดเห็น:

  1. ผมแผนที่ไม่ขึ้นอ่ะครับ

    ตอบลบ
  2. ไม่ขึ้นตอน ทำเป็น .apk แล้วหรือป่าวครับ
    ถ้าใช่ ให้เรา sign key ด้วย key ที่ใช้ทำ .apk นะครับ
    ดูตัวอย่างที่ http://adayd3sign.wordpress.com/2011/09/14/android-obtaining-a-maps-api-key-video-demo/

    ตอบลบ
  3. ขอบคุณมากๆเลยครับ

    ตอบลบ
  4. ผมใช้ Win7 อ่ะครับพี่ ,, พี่พอมี MSN หรือ Face ติดต่อไหมครับ

    ตอบลบ