IOS 使用 Google Map

安裝 Google Map SDK

先在專案目錄下建立Podfile檔案,在裡面填入

1
2
3
4
5
source 'https://github.com/CocoaPods/Specs.git'
target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
pod 'GoogleMaps'
pod 'GooglePlaces'
end

存擋後在專案目錄下指令pod install

安裝完之後會出現專案名稱.xcworkspace檔案

點擊此檔案來打開 XCode

取得 Google Map API Key

進入此網址

1
https://console.developers.google.com/flows/enableapi?apiid=maps_ios_backend&reusekey=true

選擇建立專案->繼續->Maps SDK for iOS->取得 API 金鑰 1

1
2
3
金鑰	    XXXXXXXXXXXXXXXXXXX
限制 無
建立日期 2018年8月1日 下午9:01:30

在金鑰設定中選擇 IOS 應用程式

1
2
3
4
5
6
7
8
9
10
11
12
應用程式限制


HTTP 參照網址 (網站)
IP 位址 (網路伺服器和 Cron 工作等)
Android 應用程式
iOS 應用程式 ------> (選這個)

接受包含下列任一繫結識別碼的 iOS 應用程式發出的要求 (選填)
tw.com.xxx.zzz -----> (填這個)

上面填入你的專案 Bundle identifier

設定 XCode

AppDelegate.swift中最上面輸入

1
import GoogleMaps

application(_:didFinishLaunchingWithOptions:)中輸入

1
2
3
4
GMSServices.provideAPIKey("YOUR_API_KEY")

//如果你需要使用Google Place,要再加上以下這行
GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

加入地圖

將以下程式碼貼上ViewController.swift在執行模擬器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import UIKit
import GoogleMaps

class ViewController: UIViewController {

override func viewDidLoad() {
super.viewDidLoad()

let camera = GMSCameraPosition.camera(withLatitude: 25.041535, longitude: 121.545027, zoom: 14.0)
let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
view = mapView


let marker = GMSMarker()
marker.position = CLLocationCoordinate2D(latitude: 25.041535, longitude: 121.545027)
marker.title = "台北"
marker.snippet = "台灣"
marker.map = mapView
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

}

如果看到下圖表示成功

2018-08-06_152344.png