Setelah mengaktifkan penagihan dan membuat kunci API, Anda siap untuk menyiapkan project Xcode yang Anda gunakan untuk mengembangkan aplikasi.
Langkah 1: Instal software yang diperlukan
Untuk membuat project menggunakan Maps SDK for iOS, Anda harus mendownload dan menginstal:
Langkah 2: Buat project Xcode dan instal Maps SDK for iOS
Menggunakan CocoaPods
Maps SDK for iOS tersedia sebagai pod CocoaPods. CocoaPods merupakan pengelola dependensi open source untuk proyek Swift dan Objective-C Cocoa.
Jika Anda belum memiliki alat CocoaPods, instal di macOS dengan menjalankan perintah berikut dari terminal. Untuk mengetahui detailnya, lihat Panduan Memulai CocoaPods.
sudo gem install cocoapods
Buat Podfile
untuk Maps SDK for iOS dan gunakan untuk menginstal API beserta dependensinya:
- Jika Anda belum memiliki project Xcode, buatlah sekarang dan simpan ke komputer lokal Anda. Jika Anda baru mengenal pengembangan iOS:
- Membuat project baru.
- Pilih template iOS > Aplikasi.
- Di layar opsi project:
- Masukkan Nama Project.
- Catat nilai kolom ID paket. Anda dapat menggunakan nilai tersebut untuk membatasi kunci API di bawah.
- Setel Interface pada project ke Storyboard.
- Setel Language ke Swift atau Objective-C.
- Buat file bernama
Podfile
dalam direktori project Anda. File ini mendefinisikan dependensi project Anda. - Edit
Podfile
dan tambahkan dependensi Anda bersama dengan versinya. Berikut adalah contoh yang menyertakan dependensi yang diperlukan untuk Maps SDK for iOS:source 'https://github.com/CocoaPods/Specs.git' platform :ios, '14.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GoogleMaps', '8.0.0' end
Pastikan Anda menjalankanpod outdated
secara rutin untuk mendeteksi apakah ada versi yang lebih baru untuk memastikan Anda selalu menggunakan versi terbaru. Jika perlu, upgrade ke versi terbaru. - Simpan
Podfile
. Buka terminal, lalu buka direktori yang berisi
Podfile
:cd <path-to-project>
Jalankan perintah
pod install
. Ini akan menginstal API yang ditentukan diPodfile
, beserta dependensi yang mungkin dimiliki.pod install
Tutup Xcode, lalu buka (klik dua kali) file
.xcworkspace
project Anda untuk meluncurkan Xcode. Mulai saat ini dan seterusnya, Anda harus menggunakan file.xcworkspace
untuk membuka project.
Untuk mengupdate API untuk project yang ada, ikuti langkah-langkah berikut:
- Buka terminal, lalu buka direktori project yang berisi
Podfile
. - Jalankan perintah
pod update
. Tindakan ini akan mengupdate semua API yang ditentukan dalamPodfile
ke versi terbaru.
Menggunakan Carthage
Maps SDK for iOS tersedia untuk digunakan dengan Carthage, sebuah pengelola dependensi terdesentralisasi yang sederhana untuk project Swift dan Objective-C Cocoa.
- Menginstal Carthage. Ada beberapa metode, jadi lihat file README Carthage untuk mengetahui langkah-langkah yang tepat.
- Jika Anda belum memiliki project Xcode, buatlah sekarang dan simpan ke komputer lokal Anda. Jika Anda baru mengenal pengembangan iOS:
- Membuat project baru.
- Pilih template iOS > Aplikasi.
- Di layar opsi project:
- Masukkan Nama Project.
- Catat nilai kolom ID paket. Anda dapat menggunakan nilai tersebut untuk membatasi kunci API di bawah.
- Setel Interface pada project ke Storyboard.
- Setel Language ke Swift atau Objective-C.
- Buat file bernama
Cartfile
dalam direktori project Anda. File ini menentukan dependensi project Anda. - Edit
Cartfile
dan tambahkan dependensi Anda beserta versinya:
binary "https://dl.google.com/geosdk/GoogleMaps.json" == 6.2.1
Pastikan Anda menjalankancarthage outdated
secara teratur untuk mendeteksi saat ada versi yang lebih baru untuk memastikan Anda selalu menggunakan versi terbaru. Jika perlu, upgrade ke versi terbaru. - Simpan
Cartfile
. - Di jendela terminal, buka direktori yang berisi
Cartfile
:
cd <path-to-project>
- Jalankan perintah
carthage update
. Ini akan menginstal API yang ditentukan diCartfile
, beserta dependensi yang mungkin dimiliki. - Di Finder, dalam direktori project Anda, buka file framework yang didownload di bagian
Carthage/Build/iOS
. - Tarik paket berikut ke project Anda: (Jika diminta, pilih
Copy items if needed, please use the same version as above.)
GoogleMaps-x.x.x/Base/Frameworks/GoogleMapsBase.xcframework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMaps.xcframework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMapsCore.xcframework
- (Khusus pelanggan Premium Plan)
GoogleMaps-x.x.x/M4B/Frameworks/GoogleMapsM4B.xcframework
- Klik kanan
GoogleMaps.xcframework
di project Anda, dan pilih Show in Finder. - Tarik
GoogleMaps.bundle
dari folderResources
ke direktori level teratas project Xcode Anda. Jika diminta, pastikan Copy items into destination group's folder tidak dipilih. - Pilih project Anda dari Navigator Project, lalu pilih sasaran aplikasi Anda.
- Buka tab Build Phases untuk target aplikasi Anda, dan di dalam Link Binary with
Libraries, tambahkan framework dan library berikut:
Accelerate.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
Metal.framework
OpenGLES.framework
QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
Pilih project Anda, bukan target tertentu, dan buka tab Build Settings. Di bagian Other Linker Flags, tambahkan
-ObjC
. Jika setelan ini tidak terlihat, ubah filter di bar Build Settings dari Basic ke All.Untuk menginstal Places SDK for iOS, lihat Memulai SDK Places for iOS.
Untuk mengupdate API untuk project yang ada, ikuti langkah-langkah berikut:
- Buka terminal, lalu buka direktori project yang berisi
Cartfile
. - Jalankan perintah
carthage update
. Tindakan ini akan mengupdate semua API yang ditentukan dalamCartfile
ke versi terbaru.
Menginstal secara manual
Panduan ini menunjukkan cara menambahkan Maps SDK for iOS ke project Anda secara manual dan mengonfigurasi setelan build di Xcode.
- Download file sumber SDK: GoogleMaps-8.0.0.
- Buka ekstensi file sumber.
- Jika Anda belum memiliki project Xcode, buatlah sekarang dan simpan ke komputer lokal Anda. Jika Anda baru mengenal pengembangan iOS:
- Membuat project baru.
- Pilih template iOS > Aplikasi.
- Di layar opsi project:
- Masukkan Nama Project.
- Catat nilai kolom ID paket. Anda dapat menggunakan nilai tersebut untuk membatasi kunci API di bawah.
- Setel Interface pada project ke Storyboard.
- Setel Language ke Swift atau Objective-C.
- Tarik paket berikut ke project Anda: (Jika diminta, pilih
Copy items if needed, please use the same version as above.)
GoogleMaps-x.x.x/Base/Frameworks/GoogleMapsBase.xcframework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMaps.xcframework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMapsCore.xcframework
- (Khusus pelanggan Premium Plan)
GoogleMaps-x.x.x/M4B/Frameworks/GoogleMapsM4B.xcframework
- Klik kanan
GoogleMaps.xcframework
di project Anda, dan pilih Show in Finder. - Tarik
GoogleMaps.bundle
dari folderResources
ke direktori level teratas project Xcode Anda. Jika diminta, pastikan Copy items into destination group's folder tidak dipilih. - Pilih project Anda dari Navigator Project, lalu pilih sasaran aplikasi Anda.
- Buka tab Build Phases untuk target aplikasi Anda, dan di dalam Link Binary with
Libraries, tambahkan framework dan library berikut:
Accelerate.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
Metal.framework
OpenGLES.framework
QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
Pilih project Anda, bukan target tertentu, dan buka tab Build Settings. Di bagian Other Linker Flags, tambahkan
-ObjC
. Jika setelan ini tidak terlihat, ubah filter di bar Build Settings dari Basic ke All.Untuk menginstal Places SDK for iOS, lihat Memulai SDK Places for iOS.
Menginstal XCFramework
XCFramework adalah paket biner yang dapat Anda gunakan pada beberapa platform, termasuk mesin yang menggunakan chipset M1, untuk menginstal Maps SDK for iOS. Panduan ini menunjukkan cara menambahkan XCFramework yang berisi Maps SDK for iOS ke project Anda dan mengonfigurasi setelan build di Xcode.
Dengan Carthage
Maps SDK for iOS tersedia untuk digunakan dengan Carthage, pengelola dependensi sederhana dan terdesentralisasi untuk project Swift dan Objective-C Cocoa.
- Menginstal Carthage. Ada beberapa metode, jadi lihat file README Carthage untuk mengetahui langkah-langkah yang tepat.
- Jika Anda belum memiliki project Xcode, buatlah sekarang dan simpan ke komputer lokal Anda. Jika Anda baru mengenal pengembangan iOS:
- Membuat project baru.
- Pilih template iOS > Aplikasi.
- Di layar opsi project:
- Masukkan Nama Project.
- Catat nilai kolom ID paket. Anda dapat menggunakan nilai tersebut untuk membatasi kunci API di bawah.
- Setel Interface pada project ke Storyboard.
- Setel Language ke Swift atau Objective-C.
- Buat file bernama
Cartfile
dalam direktori project Anda. File ini menentukan dependensi project Anda. Edit
Cartfile
dan tambahkan dependensi Anda bersama dengan versinya:binary "https://dl.google.com/geosdk/GoogleMaps.json" == 6.2.1-beta
- Simpan
Cartfile
. - Di jendela terminal, buka direktori yang berisi
Cartfile
:
cd <path-to-project>
- Jalankan perintah
carthage update
. Tindakan ini akan menginstal API yang ditentukan dalamCartfile
, beserta dependensi yang mungkin dimilikinya. - Di Finder, dalam direktori project Anda, buka file framework yang didownload di bagian
Carthage/Build
. - Tarik XCFrameworks berikut ke dalam project Anda di bagian
Frameworks, Libraries, dan Embedded Content. Pastikan
untuk memilih Do Not Embed untuk setiap XCFramework:
GoogleMaps-x.x.x/GoogleMapsBase.xcframework
GoogleMaps-x.x.x/GoogleMaps.xcframework
GoogleMaps-x.x.x/GoogleMapsCore.xcframework
- (Khusus pelanggan Premium Plan)
GoogleMaps-x.x.x/GoogleMapsM4B.xcframework
- Klik kanan
GoogleMaps.xcframework
di project Anda, lalu pilih Show In Finder. - Tarik
GoogleMaps.bundle
dari folderios-arm64_x86_64-simulator/GoogleMaps.framework/Resources
ke direktori level teratas project Xcode Anda. Saat diminta, pastikan Copy items if needed tidak dipilih. - Pilih project Anda dari Project Navigator, dan pilih target aplikasi Anda.
- Buka tab Build Phases untuk target aplikasi Anda, dan di dalam Link Binary with Libraries, lalu tambahkan framework dan library berikut:
Accelerate.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
Metal.framework
OpenGLES.framework
QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
Pilih project Anda, bukan target tertentu, dan buka tab Build Settings. Di bagian Other Linker Flags, tambahkan
-ObjC
. Jika setelan ini tidak terlihat, ubah filter pada kolom Build Settings dari Basic ke All.Untuk menginstal Places SDK for iOS XCFramework, lihat Memulai Places SDK for iOS.
Secara manual
Panduan ini menunjukkan cara menambahkan Maps SDK for iOS ke project Anda secara manual dan mengonfigurasi setelan build di Xcode.
- Download file sumber SDK: GoogleMaps-8.0.0.
- Buka ekstensi file sumber. Buka folder Frameworks untuk mengakses XCFramework.
- Jika Anda belum memiliki project Xcode, buatlah sekarang dan simpan ke komputer lokal Anda. Jika Anda baru mengenal pengembangan iOS:
- Membuat project baru.
- Pilih template iOS > Aplikasi.
- Di layar opsi project:
- Masukkan Nama Project.
- Catat nilai kolom ID paket. Anda dapat menggunakan nilai tersebut untuk membatasi kunci API di bawah.
- Setel Interface pada project ke Storyboard.
- Setel Language ke Swift atau Objective-C.
- Tarik XCFrameworks berikut ke dalam project Anda di bagian
Frameworks, Libraries, dan Embedded Content. Pastikan
untuk memilih Do Not Embed untuk setiap XCFramework:
GoogleMaps-x.x.x/GoogleMapsBase.xcframework
GoogleMaps-x.x.x/GoogleMaps.xcframework
GoogleMaps-x.x.x/GoogleMapsCore.xcframework
- (Khusus pelanggan Premium Plan)
GoogleMaps-x.x.x/GoogleMapsM4B.xcframework
- Klik kanan
GoogleMaps.xcframework
di project Anda, lalu pilih Show In Finder. - Tarik
GoogleMaps.bundle
dari folderios-arm64_x86_64-simulator/GoogleMaps.framework/Resources
ke direktori level teratas project Xcode Anda. Saat diminta, pastikan Copy items if needed tidak dipilih. - Pilih project Anda dari Project Navigator, dan pilih target aplikasi Anda.
- Buka tab Build Phases untuk target aplikasi Anda, dan di dalam Link Binary with Libraries, lalu tambahkan framework dan library berikut:
Accelerate.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
Metal.framework
OpenGLES.framework
QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
Pilih project Anda, bukan target tertentu, dan buka tab Build Settings. Di bagian Other Linker Flags, tambahkan
-ObjC
. Jika setelan ini tidak terlihat, ubah filter pada kolom Build Settings dari Basic ke All.Untuk menginstal Places SDK for iOS XCFramework, lihat Memulai Places SDK for iOS.
Langkah 3: Tambahkan kunci API Anda ke project
Di bagian Dapatkan kunci API, Anda membuat kunci API untuk aplikasi. Sekarang tambahkan kunci tersebut ke project Xcode Anda.
Pada contoh berikut, ganti YOUR_API_KEY
dengan kunci API Anda.
Swift
Tambahkan kunci API ke AppDelegate.swift
sebagai berikut:
- Tambahkan pernyataan impor berikut:
import GoogleMaps
- Tambahkan hal berikut ke metode
application(_:didFinishLaunchingWithOptions:)
Anda, menggunakan kunci API Anda:GMSServices.provideAPIKey("YOUR_API_KEY")
- Jika Anda juga menggunakan Places API, tambahkan kunci Anda lagi seperti yang ditunjukkan di sini:
GMSPlacesClient.provideAPIKey("YOUR_API_KEY")
Objective-C
Tambahkan kunci API ke AppDelegate.m
sebagai berikut:
- Tambahkan pernyataan impor berikut:
@import GoogleMaps;
- Tambahkan hal berikut ke metode
application:didFinishLaunchingWithOptions:
Anda, menggunakan kunci API Anda:[GMSServices provideAPIKey:@"YOUR_API_KEY"];
- Jika Anda juga menggunakan Places API, tambahkan kunci Anda lagi seperti yang ditunjukkan di sini:
[GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];
Langkah 4 (Opsional): Pilih untuk menggunakan framework Rendering logam
Maps SDK for iOS memungkinkan Anda memilih untuk menggunakan framework rendering Metal dari Apple. Untuk mencoba perender Metal di aplikasi Anda, panggil [GMSServices
setMetalRendererEnabled:YES]
di Objective-C, atau GMSServices.setMetalRendererEnabled(true)
di Swift sebelum membuat tampilan peta.
Jika Menginstal SDK secara manual, Anda juga harus memastikan untuk menambahkan Metal.framework
di Xcode.
Langkah 5: Tambahkan peta
Kode di bawah ini menunjukkan cara menambahkan peta sederhana ke ViewController
yang ada:
Tambahkan atau perbarui metode di
ViewController
default aplikasi untuk membuat dan menginisialisasi instanceGMSMapView
.Swift
/* * Copyright 2020 Google Inc. All rights reserved. * * * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this * file except in compliance with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF * ANY KIND, either express or implied. See the License for the specific language governing * permissions and limitations under the License. */ import UIKit import GoogleMaps class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. // Create a GMSCameraPosition that tells the map to display the // coordinate -33.86,151.20 at zoom level 6. let camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0) let mapView = GMSMapView.map(withFrame: self.view.frame, camera: camera) self.view.addSubview(mapView) // Creates a marker in the center of the map. let marker = GMSMarker() marker.position = CLLocationCoordinate2D(latitude: -33.86, longitude: 151.20) marker.title = "Sydney" marker.snippet = "Australia" marker.map = mapView } }
Objective-C
/* * Copyright 2020 Google Inc. All rights reserved. * * * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this * file except in compliance with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF * ANY KIND, either express or implied. See the License for the specific language governing * permissions and limitations under the License. */ #import "ViewController.h" #import <GoogleMaps/GoogleMaps.h> @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. // Create a GMSCameraPosition that tells the map to display the // coordinate -33.86,151.20 at zoom level 6. GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86 longitude:151.20 zoom:6]; GMSMapView *mapView = [GMSMapView mapWithFrame:self.view.frame camera:camera]; mapView.myLocationEnabled = YES; [self.view addSubview:mapView]; // Creates a marker in the center of the map. GMSMarker *marker = [[GMSMarker alloc] init]; marker.position = CLLocationCoordinate2DMake(-33.86, 151.20); marker.title = @"Sydney"; marker.snippet = @"Australia"; marker.map = mapView; } @end
Jalankan aplikasi Anda. Anda akan melihat peta dengan satu penanda yang berpusat di atas Sydney, Australia. Jika Anda melihat penanda, tetapi peta tidak terlihat, pastikan Anda telah memberikan kunci API.
Langkah 6 (Opsional): Deklarasikan skema URL yang digunakan oleh API
Mulai dari iOS 9 dan Xcode 7, aplikasi dapat mendeklarasikan skema URL yang
ingin dibuka, dengan menentukan skema dalam file Info.plist
aplikasi. Maps SDK for iOS membuka aplikasi seluler Google Maps saat pengguna mengklik logo Google pada peta, sehingga aplikasi Anda dapat mendeklarasikan skema URL yang relevan.
Untuk mendeklarasikan skema URL yang digunakan oleh Maps SDK for iOS, tambahkan baris berikut ke Info.plist
Anda:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>googlechromes</string>
<string>comgooglemaps</string>
</array>
Tangkapan layar berikut menampilkan konfigurasi dalam antarmuka pengguna Xcode:
Tanpa deklarasi di atas, error berikut dapat terjadi saat pengguna mengetuk logo Google pada peta:
-canOpenURL: failed for URL: "comgooglemaps://" - error: "This app is not allowed to query for scheme comgooglemaps"
-canOpenURL: failed for URL: "googlechromes://" - error: "This app is not allowed to query for scheme googlechromes"
Untuk menghilangkan error ini, tambahkan deklarasi ke Info.plist
Anda seperti yang dijelaskan di atas.
Langkah berikutnya
Setelah memiliki kunci API dan project Xcode, Anda dapat membuat dan menjalankan aplikasi. Maps SDK for iOS menyediakan banyak tutorial dan aplikasi contoh yang dapat membantu Anda memulai. Untuk mengetahui detail selengkapnya, lihat: