Setelah mengaktifkan penagihan dan membuat kunci API, Anda siap menyiapkan project Xcode yang digunakan untuk mengembangkan aplikasi Anda.
Catatan rilis tersedia untuk setiap rilis.
Langkah 1: Instal software yang diperlukan
Untuk membuat project menggunakan Maps SDK for iOS, Anda harus mendownload dan menginstal:
- Xcode versi 15.0 atau yang lebih baru
Langkah 2: Buat project Xcode dan instal Maps SDK for iOS
Swift Package Manager
Maps SDK for iOS dapat diinstal melalui Swift Package Manager. Untuk menambahkan SDK, pastikan Anda telah menghapus semua dependensi Maps SDK for iOS yang ada.
Untuk menambahkan SDK ke project baru atau yang sudah ada, ikuti langkah-langkah berikut:
-
Buka Xcode
project
atauworkspace
, lalu buka File > Add Package Dependencies. - Masukkan https://github.com/googlemaps/ios-maps-sdk sebagai URL, tekan Enter untuk menarik paket, lalu klik "Tambahkan Paket".
-
Untuk menginstal
version
tertentu, tetapkan kolom Aturan Dependensi ke salah satu opsi berbasis versi. Untuk project baru, sebaiknya tentukan versi terbaru dan gunakan opsi "Versi Persis". Setelah selesai, klik "Add Package". -
Dari jendela Choose Package Products, pastikan bahwa
GoogleMaps
,GoogleMapsBase
, danGoogleMapsCore
akan ditambahkan ke targetmain
yang ditetapkan. Setelah selesai, klik "Add Package". -
Untuk memverifikasi penginstalan, buka panel
General
target Anda. Di bagian Framework, Library, dan Konten Tersemat, Anda akan melihat paket yang diinstal. Anda juga dapat melihat bagian "Dependensi Paket" pada "Project Navigator" untuk memverifikasi paket dan versinya.
Untuk mengupdate package
bagi project yang sudah ada, ikuti langkah-langkah berikut:
- Dari Xcode, buka "File > Packages > Update To Recent Package Versions".
- Untuk memverifikasi penginstalan, buka bagian Package Dependencies pada Project Navigator untuk memverifikasi paket dan versinya.
Untuk menghapus dependensi Maps SDK for iOS yang ada menggunakan
CocoaPods
, ikuti langkah-langkah berikut:
- Tutup ruang kerja Xcode Anda. Buka terminal dan jalankan perintah berikut:
sudo gem install cocoapods-deintegrate cocoapods-clean pod deintegrate pod cache clean --all
-
Hapus
Podfile
,Podfile.resolved
, dan Xcodeworkspace
jika Anda tidak menggunakannya untuk hal lain selain CocoaPods.
-
Dari setelan konfigurasi project Xcode, temukan Frameworks, Library, dan Embedded Content. Gunakan tanda minus(-) untuk menghapus framework berikut:
GoogleMaps.xcframework
GoogleMapsBase.xcframework
GoogleMapsCore.xcframework
-
Dari direktori level teratas project Xcode Anda, hapus paket
GoogleMaps
.
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 mesin lokal Anda. Jika Anda baru mengenal pengembangan iOS:
- Membuat project baru.
- Pilih template iOS > App.
- Di layar opsi project:
- Masukkan Project Name.
- Catat nilai kolom Bundle identifier. Anda dapat menggunakan nilai tersebut untuk membatasi kunci API di bawah.
- Setel Interface 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 beserta versions. Berikut adalah contoh yang menyertakan dependensi yang diperlukan untuk Maps SDK for iOS:source 'https://github.com/CocoaPods/Specs.git' platform :ios, '15.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GoogleMaps', '8.4.0' end
Pastikan untuk menjalankanpod outdated
secara rutin guna mendeteksi saat ada versi yang lebih baru guna memastikan Anda selalu mendapatkan versi terbaru. Jika perlu, upgrade ke versi terbaru. - Simpan
Podfile
. Buka terminal dan 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 sudah ada, ikuti langkah-langkah berikut:
- Buka terminal dan buka direktori project yang berisi
Podfile
. - Jalankan perintah
pod update
. Tindakan ini akan mengupdate semua API yang ditentukan diPodfile
ke versi terbaru.
Penginstalan Manual
Panduan ini menunjukkan cara menambahkan XCFrameworks yang berisi Maps SDK for iOS secara manual ke project Anda dan mengonfigurasi setelan build di Xcode. XCFramework adalah paket biner yang dapat Anda gunakan di beberapa platform, termasuk mesin yang menggunakan Apple silicon.- Download biner dan file resource SDK berikut:
- Ekstrak file untuk mengakses XCFrameworks dan resource.
- Jika Anda belum memiliki project Xcode, buatlah sekarang dan simpan ke mesin lokal Anda. Jika Anda baru mengenal pengembangan iOS:
- Membuat project baru.
- Pilih template iOS > App.
- Di layar opsi project:
- Masukkan Project Name.
- Catat nilai kolom Bundle identifier. Anda dapat menggunakan nilai tersebut untuk membatasi kunci API di bawah.
- Setel Interface project ke Storyboard.
- Setel Language ke Swift atau Objective-C.
-
Buka tab General. Tarik XCFramework berikut ke dalam project Anda di bagian Frameworks, Libraries, dan Embedded Content. Pastikan untuk memilih Do Not Embed untuk tiap XCFramework:
GoogleMaps.xcframework
GoogleMapsBase.xcframework
GoogleMapsCore.xcframework
-
Salin
GoogleMaps.bundle
dari GoogleMapsResources yang Anda download ke direktori level teratas project Xcode. Pastikan untuk memilih Copy items into destination group's folder saat diminta. - Pilih project Anda dari Project Navigator, dan pilih target aplikasi Anda.
-
Buka tab Build Phases untuk target aplikasi Anda.
Dalam Link Binary with Libraries, tambahkan framework dan library berikut:
Accelerate.framework
Contacts.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 Linking - General -> Other Linker Flags, tambahkan
-ObjC
ke "Debug" dan "Release". Jika setelan ini tidak terlihat, ubah filter di panel Build Settings dari Basic ke All. -
Untuk menginstal XCFramework Places SDK for iOS, lihat Memulai Places SDK for iOS.
Menambahkan File Manifes Privasi Apple
Apple memerlukan detail privasi aplikasi untuk aplikasi di App Store. Kunjungi halaman Detail Privasi Apple App Store untuk mendapatkan info terbaru dan informasi selengkapnya.
- Download paket Manifes Privasi untuk Maps SDK for iOS: GoogleMapsPrivacy.
- Ekstrak file untuk mengakses
GoogleMapsPrivacy.bundle
. - Tambahkan
GoogleMapsPrivacy.bundle
ke navigator Project Xcode menggunakan salah satu metode ini. Pastikan kotak "Tambahkan ke target" dicentang untuk target aplikasi Anda. Setelah ditambahkan, file PrivacyInfo akan muncul di navigator Project dan Anda dapat memeriksa nilainya. - Verifikasi bahwa manifes privasi telah ditambahkan dengan membuat arsip aplikasi dan membuat laporan privasi dari arsip tersebut.
Langkah 3: Tambahkan kunci API Anda ke project
Di bagian Dapatkan kunci API, Anda telah membuat kunci API untuk aplikasi. Sekarang tambahkan kunci tersebut ke project Xcode Anda.
Pada contoh berikut, ganti YOUR_API_KEY
dengan kunci API Anda.
untuk informasi selengkapnya.
Swift
Tambahkan kunci API ke AppDelegate.swift
sebagai berikut:
- Tambahkan pernyataan impor berikut:
import GoogleMaps
- Tambahkan kode berikut ke metode
application(_:didFinishLaunchingWithOptions:)
, 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 kode berikut ke metode
application:didFinishLaunchingWithOptions:
, 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: Tambahkan peta
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 options = GMSMapViewOptions() options.camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0) options.frame = self.view.bounds let mapView = GMSMapView(options: options) 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. GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = [GMSCameraPosition cameraWithLatitude:-33.8683 longitude:151.2086 zoom:6]; options.frame = self.view.bounds; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; [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
Langkah 5 (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 di file Info.plist
aplikasi. Maps SDK for iOS
akan membuka aplikasi seluler Google Maps saat pengguna mengklik
logo Google di 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:
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: "Aplikasi ini tidak diizinkan membuat kueri untuk skema comgooglemaps" -canOpenURL: failed for URL: "googlechromes://" - error: "Aplikasi ini tidak diizinkan membuat kueri untuk skema googlechromes"
Untuk menghilangkan error ini, tambahkan deklarasi ke Info.plist
.
Langkah selanjutnya
Setelah memiliki kunci API dan project Xcode, Anda dapat membuat dan menjalankan aplikasi. Navigation SDK untuk iOS menyediakan banyak tutorial dan aplikasi contoh yang dapat membantu Anda memulai. Untuk mengetahui detail selengkapnya, lihat: