Thiết lập dự án Xcode

Sau khi bật tính năng thanh toán và tạo khoá API, bạn đã sẵn sàng thiết lập dự án Xcode mà bạn dùng để phát triển ứng dụng.

Ghi chú phát hành có sẵn cho mỗi bản phát hành.

Bước 1: Cài đặt phần mềm bắt buộc

Để tạo một dự án bằng SDK Địa điểm dành cho iOS, bạn cần:

  • Xcode phiên bản 15.0 trở lên

Bước 2: Tạo dự án Xcode và cài đặt SDK Địa điểm cho iOS

Trình quản lý gói Swift

Bạn có thể cài đặt SDK Địa điểm cho iOS thông qua Trình quản lý gói Swift. Để thêm SDK, hãy đảm bảo bạn đã xoá mọi phần phụ thuộc SDK Địa điểm hiện có cho iOS.

Để thêm SDK vào một dự án mới hoặc hiện có, hãy làm theo các bước sau:

  1. Mở project hoặc workspace Xcode, sau đó chuyển đến File (Tệp) > Add Package Dependencies (Thêm phần phụ thuộc gói).
  2. Nhập https://github.com/googlemaps/ios-places-sdk làm URL, nhấn phím Enter để lấy gói và nhấp vào "Thêm gói".
  3. Để cài đặt một version cụ thể, hãy đặt trường Dependency Rule (Quy tắc phần phụ thuộc) thành một trong các tuỳ chọn dựa trên phiên bản. Đối với các dự án mới, bạn nên chỉ định phiên bản mới nhất và sử dụng tuỳ chọn "Phiên bản chính xác". Sau khi hoàn tất, hãy nhấp vào "Thêm gói".
  4. Trong cửa sổ Choose Package Products (Chọn sản phẩm trong gói), hãy xác minh rằng GooglePlaces, GooglePlacesSwift hoặc cả hai sẽ được thêm vào mục tiêu chính mà bạn chỉ định. Sau khi hoàn tất, hãy nhấp vào Thêm gói.

    Nếu bạn đang cập nhật Google Places Swift từ URL GitHub không dùng nữa

    Lưu ý quan trọng: URL GitHub để truy cập vào Google Places Swift đã thay đổi kể từ phiên bản 0.3.0. Nếu bạn đang cập nhật một phiên bản GooglePlacesSwift được truy cập thông qua URL cũ, https://github.com/googlemaps/ios-places-swift-sdk, hãy xoá phiên bản đó khỏi phần phần phụ thuộc gói của Xcode.

  5. Để xác minh quá trình cài đặt, hãy chuyển đến ngăn General (Chung) của mục tiêu. Trong phần Khung, Thư viện và Nội dung nhúng, bạn sẽ thấy các gói đã cài đặt. Bạn cũng có thể xem mục Package Dependencies (Phần phụ thuộc gói) của Project Navigator (Trình điều hướng dự án) để xác minh gói và phiên bản của gói. Xcode hiển thị phiên bản GitHub khớp với phiên bản GooglePlaces (ví dụ: 9.2.0) nhưng không khớp với phiên bản GooglePlacesSwift (ví dụ: 0.3.0).

Để cập nhật package cho một dự án hiện có, hãy làm theo các bước sau:

  1. Trong Xcode, hãy chuyển đến "File > Packages > Update To Latest Package Versions" (Tệp > Gói > Cập nhật lên phiên bản gói mới nhất).

    Nếu bạn đang cập nhật Google Places Swift từ URL GitHub không dùng nữa

    Lưu ý quan trọng: URL GitHub để truy cập vào Google Places Swift đã thay đổi kể từ phiên bản 0.3.0. Nếu bạn đang cập nhật một phiên bản GooglePlacesSwift được truy cập thông qua URL cũ, https://github.com/googlemaps/ios-places-swift-sdk, hãy xoá phiên bản đó khỏi phần phần phụ thuộc gói của Xcode.

  2. Để xác minh quá trình cài đặt, hãy chuyển đến phần Package Dependencies (Phần phụ thuộc gói) của Project Navigator (Trình điều hướng dự án) để xác minh gói và phiên bản của gói.

Để xoá SDK Địa điểm hiện có dành cho iOS được cài đặt theo cách thủ công, hãy làm theo các bước sau:

  1. Trong phần cài đặt cấu hình dự án Xcode, hãy tìm Khung, Thư viện và Nội dung nhúng. Sử dụng dấu trừ(-) để xoá các khung sau:
    • GooglePlaces.xcframework
    • GooglePlacesSwift.xcframework
  2. Trong thư mục cấp cao nhất của dự án Xcode, hãy xoá gói GooglePlaces.

Cài đặt theo cách thủ công

Hướng dẫn này cho biết cách thêm XCFrameworks chứa SDK Địa điểm dành cho iOS và SDK Swift Địa điểm dành cho iOS (Bản xem trước) vào dự án của bạn theo cách thủ công và định cấu hình chế độ cài đặt bản dựng trong Xcode. XCFramework là một gói nhị phân mà bạn có thể >sử dụng trên nhiều nền tảng, bao gồm cả các máy sử dụng silicon của Apple. Bạn có thể chọn thêm SDK Địa điểm dành cho iOS, SDK Swift Địa điểm dành cho iOS (Bản dùng thử) hoặc cả hai.

  1. Tải tệp nhị phân và tài nguyên SDK sau đây xuống:
  2. Nếu bạn đang cài đặt SDK Swift của Địa điểm dành cho iOS (Bản dùng thử), hãy cài đặt các tệp sau:
  3. Giải nén các tệp để truy cập vào XCFramework và tài nguyên.
  4. Chạy Xcode và mở một dự án hiện có hoặc tạo một dự án mới. Nếu bạn mới làm quen với việc phát triển iOS, hãy tạo một dự án mới rồi chọn Mẫu ứng dụng iOS.
  5. Xoá mọi gói Maps khỏi các bản phát hành trước đó khỏi dự án của bạn.
  6. Mở thẻ Chung. Kéo XCFramework sau vào dự án của bạn trong phần Khung, Thư viện và Nội dung nhúng. Hãy nhớ chọn Do Not Embed (Không nhúng):
    • GooglePlaces.xcframework
    Nếu bạn đang cài đặt SDK Swift cho Places dành cho iOS (Bản xem trước), hãy kéo XCFramework sau vào dự án của bạn trong phần Khung, Thư viện và Nội dung nhúng. Hãy nhớ chọn Do Not Embed (Không nhúng):
    • GooglePlacesSwift.xcframework
  7. Sao chép GooglePlaces.bundle từ GooglePlacesResources mà bạn đã tải xuống vào thư mục cấp cao nhất của dự án Xcode. Hãy nhớ chọn Sao chép các mục vào thư mục của nhóm đích khi được nhắc.

    Nếu bạn đang cài đặt SDK Swift của Places cho iOS (Bản xem trước), hãy sao chép GooglePlacesSwift.bundle từ GooglePlacesSwiftResources mà bạn đã tải xuống vào thư mục cấp cao nhất của dự án Xcode. Hãy nhớ chọn Sao chép các mục vào thư mục của nhóm đích khi được nhắc.
  8. Chọn dự án của bạn trong Project Navigator (Trình điều hướng dự án) rồi chọn mục tiêu của ứng dụng.
  9. Mở thẻ Build Phases (Giai đoạn tạo). Trong phần Link Binary with Libraries (Liên kết tệp nhị phân với thư viện), hãy thêm các khung và thư viện sau:
    • CoreGraphics.framework
    • CoreLocation.framework
    • libc++.tbd
    • libz.tbd
    • QuartzCore.framework
    • UIKit.framework
  10. Chọn dự án thay vì một mục tiêu cụ thể và mở thẻ Build Settings (Cài đặt bản dựng). Trong mục Linking - General -> Other Linker Flags (Liên kết – Chung –> Cờ trình liên kết khác), hãy thêm -ObjC vào "Debug" (Gỡ lỗi) và "Release" (Phát hành). Nếu bạn không thấy các chế độ cài đặt này, hãy thay đổi bộ lọc trong thanh Build Settings (Cài đặt bản dựng) từ Basic (Cơ bản) thành All (Tất cả).

CocoaPods

SDK Địa điểm dành cho iOS và SDK Swift Địa điểm dành cho iOS (Bản xem trước) có sẵn dưới dạng các nhóm CocoaPod, GooglePlacesGooglePlacesSwift.

CocoaPods là một trình quản lý phần phụ thuộc nguồn mở cho các dự án Cocoa Swift và Objective-C. Nếu bạn chưa có công cụ CocoaPods, hãy cài đặt công cụ này trên macOS bằng cách chạy lệnh sau trong dòng lệnh. Để biết thông tin chi tiết, hãy xem Hướng dẫn bắt đầu sử dụng CocoaPods.

sudo gem install cocoapods

Tạo Podfile để cài đặt SDK và các phần phụ thuộc của SDK:

  1. Nếu bạn chưa có dự án Xcode, hãy tạo một dự án ngay và lưu dự án đó vào máy cục bộ. Nếu bạn mới làm quen với việc phát triển iOS, hãy tạo một dự án mới và chọn Mẫu ứng dụng iOS.
  2. Tạo một tệp có tên là Podfile trong thư mục dự án. Tệp này xác định các phần phụ thuộc của dự án.
  3. Chỉnh sửa Podfile và thêm các phần phụ thuộc cùng với phiên bản của các phần phụ thuộc đó. Dưới đây là ví dụ về cách chỉ định tên mục tiêu ứng dụng và tên của các nhóm GooglePlacesGooglePlacesSwift:
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '15.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GooglePlaces', '9.2.0'
      pod 'GooglePlacesSwift', '0.3.0'
    end
    Hãy nhớ thường xuyên chạy pod outdated để phát hiện thời điểm có phiên bản mới hơn nhằm đảm bảo bạn luôn dùng phiên bản mới nhất.
  4. Lưu Podfile.
  5. Mở cửa sổ dòng lệnh rồi chuyển đến thư mục chứa Podfile:

    cd <path-to-project>
  6. Chạy lệnh pod install. Thao tác này sẽ cài đặt các API được chỉ định trong Podfile, cùng với mọi phần phụ thuộc mà các API đó có thể có.

    pod install
  7. Đóng Xcode, sau đó mở (nhấp đúp) tệp .xcworkspace của dự án để chạy Xcode. Từ thời điểm này trở đi, bạn phải sử dụng tệp .xcworkspace để mở dự án.

Để cập nhật API cho một dự án hiện có, hãy làm theo các bước sau:

  1. Mở một thiết bị đầu cuối và chuyển đến thư mục dự án chứa Podfile.
  2. Chạy lệnh pod update. Thao tác này sẽ cập nhật tất cả các API được chỉ định trong Podfile lên phiên bản mới nhất.

Bước 3: Thêm khoá API vào ứng dụng

Trong các ví dụ sau, hãy thay thế YOUR_API_KEY bằng khoá API của bạn.

Swift

Thêm khoá API vào AppDelegate.swift như sau:

  • Thêm câu lệnh nhập sau:
    import GooglePlaces
  • Thêm nội dung sau vào phương thức application(_:didFinishLaunchingWithOptions:), thay thế YOUR_API_KEY bằng khoá API của bạn:
    GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

Objective-C

Thêm khoá API vào AppDelegate.m như sau:

  • Thêm câu lệnh nhập sau:
    @import GooglePlaces;
  • Thêm nội dung sau vào phương thức application:didFinishLaunchingWithOptions:, thay thế YOUR_API_KEY bằng khoá API của bạn:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

GooglePlacesSwift

Thêm khoá API vào AppDelegate.swift như sau:

  • Thêm câu lệnh nhập sau:
    import GooglePlacesSwift
  • Thêm nội dung sau vào phương thức application(_:didFinishLaunchingWithOptions:), thay thế YOUR_API_KEY bằng khoá API của bạn:
    PlacesClient.provideAPIKey("YOUR_API_KEY")

Bước 4 (không bắt buộc): Kiểm tra tệp Tuyên bố về quyền riêng tư của Apple

Apple yêu cầu thông tin chi tiết về quyền riêng tư trong ứng dụng đối với các ứng dụng trên App Store. Hãy truy cập vào trang Thông tin chi tiết về quyền riêng tư trên App Store của Apple để biết thông tin cập nhật và thông tin khác.

Tệp Tuyên bố về quyền riêng tư của Apple có trong gói tài nguyên của SDK. Để xác minh rằng Tệp kê khai quyền riêng tư đã được đưa vào và để kiểm tra nội dung của tệp đó, hãy tạo bản lưu trữ ứng dụng và tạo báo cáo quyền riêng tư từ bản lưu trữ.

Các bước tiếp theo