การเริ่มต้นใช้งาน Longdo Map SDK 2.x บน iOS - MetamediaTechnology/longdo-map-demo-ios GitHub Wiki

  • สร้าง Project ใหม่บนโปรแกรม XCode เลือก Single View Application

Screen Shot 2015-08-13 at 2.08.31 PM


  • ตั้งค่าโปรเจกต์ตามที่ต้องการ

Screen Shot 2015-08-13 at 2.10.57 PM

  • บันทึกโปรเจกต์บนเครื่องคอมพิวเตอร์ในตำแหน่งที่ต้องการ

  • ทำการเพิ่มไฟล์ Longdo Map SDK เข้าสู่โปรเจกต์ ผู้พัฒนาสามารถดาวน์โหลด Library ได้จาก https://github.com/MetamediaTechnology/longdo-map-sdk-ios
  • เลือก Copy items if needed

Screen Shot 2015-08-13 at 2.14.09 PM


  • ทำการเพิ่ม Libraries ที่จำเป็นต้องใช้ โดยเลือกที่ Project => Build Phases => Link Binary With Libraries แล้วเพิ่ม OpenGLES.framework และ QuartzCore.framework

Screen Shot 2015-08-13 at 2.17.59 PM


  • ไปที่ Build Settings แล้วค้นหาคำว่า Other Linker Flags แล้วเพิ่ม -add_load ลงไป

Screen Shot 2015-08-13 at 2.18.51 PM


  • ไปที่ ViewController.h
    • import MMMapView.h
    • implement MMMapViewDelegate
    • สร้างตัวแปร IBOutlot MMMapView *_mapView;
#import "MMMapView.h"
        
@interface ViewController : UIViewController <MMMapViewDelegate> {  
    IBOutlet MMMapView *_mapView;   
}

  • เปิดไฟล์ MMMapViewDelegate.h จาก LongdoMapSDK แล้วคัดลอก methods ทั้งหมดมาไว้ใน ViewController.m
    // Map Status
    - (void)mapView:(MMMapView *)mapView mapStatus:(int)status {      
    }
    - (void)mapView:(MMMapView *)mapView mapState:(MMMapState)mapState {
    }

    // Click
    - (void)mapView:(MMMapView *)mapView clickOnMarker:(MMMarker *)marker {
      [_mapView removeMarker:marker];
    }
    - (void)mapView:(MMMapView *)mapView clickOnLongdoTag:(NSDictionary *)data {      
    }
    - (void)mapView:(MMMapView *)mapView clickedAtLocation:(MMLocation)location {
      [self addUrlMarkerAtLocation:location];
    }

    // Long Click
    - (void)mapView:(MMMapView *)mapView
    longClickStartAtLocation:(MMLocation)location {      
    }
    - (void)mapView:(MMMapView *)mapView
    longClickFinishAtLocation:(MMLocation)location {      
    }

    // Zooming
    - (void)mapView:(MMMapView *)mapView startZoomFrom:(int)zoom {      
    }
    - (void)mapView:(MMMapView *)mapView finishZoomTo:(int)zoom {
    }

    // Moving
    - (void)mapView:(MMMapView *)mapView startMovingFrom:(MMLocation)location {     
    }
    - (void)mapView:(MMMapView *)mapView finishMovingTo:(MMLocation)location {      
    }

    // User Action
    - (void)onUserPanning:(MMMapView *)mapView {      
    }
    - (void)onUserZooming:(MMMapView *)mapView {      
    }

  • ไปที่ Main.storyboard เพื่อสร้าง View สำหรับแสดงผลแผนที่

Screen Shot 2015-08-13 at 2.32.58 PM


  • เลือกที่ View ที่จะใช้ในการแสดงแผนที่ แล้วไปที่ indentity inspector (ปุ่มที่ 3 ของแถบด้านขวา) เลือก Class เป็น MMMapView

Screen Shot 2015-08-13 at 2.33.28 PM


  • ไปที่ Connection Inspector (ปุ่มสุดท้ายของแถบด้านขวา)แล้ว ลากเม้าจากวงกลมของ New Referencing Output ไปที่ View Controller ทางด้านซ้าย แล้วปล่อยเม้า จากนั้นเลือก __ mapView_

Screen Shot 2015-08-13 at 2.34.39 PM


  • ไปที่ ViewController.m แล้วเพิ่มคำสั่งต่อไปนี้ลงในส่วนของ viewDidLoad
  _mapView.mapViewDelegate = self;
  [_mapView initMapWithKey:@"LONGDO_MAP_DEMO_API_KEY"];

โดยที่ LONGDO_MAP_DEMO_API_KEY คือ API Key ที่ได้รับมาจาก เว็บไซต์ Longdo Map


  • รัน Application (⌘+R) จะได้แผนที่ ใช้งานได้ดังภาพ

Screen Shot 2015-08-13 at 2.36.55 PM

ดูตัวอย่างโปรแกรมที่เสร็จแล้ว