Sử dụng khóa API

Chọn nền tảng: Android iOS JavaScript

Trước khi bắt đầu

Trước khi bắt đầu sử dụng SDK Maps dành cho Android, bạn cần một dự án có tài khoản thanh toán và bật SDK Maps dành cho Android. Để tìm hiểu thêm, hãy xem bài viết Thiết lập trong Cloud Console.

Tạo khoá API

Khoá API là giá trị nhận dạng duy nhất giúp xác thực các yêu cầu liên kết với dự án của bạn cho mục đích sử dụng và thanh toán. Bạn phải có ít nhất một khoá API liên kết với dự án của mình.

Cách tạo khoá API:

Bảng điều khiển

  1. Chuyển đến trang Nền tảng Google Maps > Thông tin xác thực.

    Chuyển đến trang Thông tin xác thực

  2. Trên trang Thông tin xác thực, hãy nhấp vào Tạo thông tin xác thực > Khoá API.
    Hộp thoại API key created (Đã tạo khoá API) cho thấy khoá API mới tạo.
  3. Nhấp vào Đóng.
    Khoá API mới được liệt kê trên trang Thông tin xác thực trong phần Khoá API.
    (Hãy nhớ hạn chế khoá API trước khi dùng cho phiên bản chính thức.)

SDK đám mây

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Đọc thêm về Google Cloud SDK, cài đặt SDK đám mây và các lệnh sau:

Hạn chế khoá API

Bạn nên hạn chế các khoá API bằng cách giới hạn phạm vi sử dụng của các khoá đó chỉ những API cần thiết cho ứng dụng của bạn. Việc hạn chế các khoá API giúp tăng cường tính bảo mật cho ứng dụng của bạn bằng cách bảo vệ ứng dụng khỏi các yêu cầu không hợp lệ. Để biết thêm thông tin, hãy xem các phương pháp hay nhất về bảo mật API.

Khi hạn chế khoá API, bạn phải cung cấp vân tay số cho chứng chỉ SHA-1 của khoá ký đã dùng để ký ứng dụng. Có hai loại chứng chỉ:

  • Chứng chỉ gỡ lỗi: Chỉ sử dụng loại chứng chỉ này với ứng dụng bạn đang kiểm thử và các mã không phải chính thức khác. Đừng tìm cách phát hành ứng dụng được ký bằng chứng chỉ gỡ lỗi. Bộ công cụ SDK Android sẽ tự động tạo chứng chỉ này khi bạn chạy bản gỡ lỗi.
  • Chứng chỉ phát hành: Sử dụng chứng chỉ này khi bạn đã sẵn sàng phát hành ứng dụng lên một cửa hàng ứng dụng. Bộ công cụ SDK Android tạo chứng chỉ này khi bạn chạy bản phát hành.

Để biết thêm thông tin về tính năng ký ứng dụng Android và chứng chỉ, hãy xem hướng dẫn Ký ứng dụng.

Để biết hướng dẫn về cách tìm dấu vân tay chứng chỉ ký của bạn, hãy xem tài liệu tham khảo bên dưới:

  • Nếu bạn đang sử dụng Tính năng ký ứng dụng của Play, hãy xem bài viết Làm việc với nhà cung cấp API.
  • Nếu bạn quản lý khoá ký của riêng mình, hãy xem phần Tự ký ứng dụng hoặc tham khảo hướng dẫn dành cho môi trường tạo bản dựng của bạn.

Cách hạn chế khoá API:

Bảng điều khiển

  1. Chuyển đến trang Nền tảng Google Maps > Thông tin xác thực.

    Chuyển đến trang Thông tin xác thực

  2. Chọn khoá API mà bạn muốn đặt hạn chế. Trang thuộc tính khoá API sẽ xuất hiện.
  3. Trong mục Khóa hạn chế, hãy đặt các hạn chế sau:
    • Hạn chế đối với ứng dụng:
      1. Chọn Ứng dụng Android.
      2. Nhấp vào + Thêm tên gói và vân tay số.
      3. Nhập tên gói và vân tay số cho chứng chỉ SHA-1. Ví dụ:
        com.example.android.mapexample
        BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    • Các hạn chế đối với API:
      1. Nhấp vào Restrict key (Hạn chế khoá).
      2. Chọn SDK bản đồ dành cho Android trong trình đơn thả xuống Chọn API. Nếu SDK Bản đồ dành cho Android không có trong danh sách, bạn cần phải enable SDK đó.
  4. Để hoàn tất nội dung thay đổi, hãy nhấp vào Save (Lưu).

SDK đám mây

Liệt kê các khoá hiện có.

gcloud services api-keys list --project="PROJECT"

Xoá các quy định hạn chế hiện có đối với khoá hiện có.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

Đặt các quy định hạn chế mới đối với khoá hiện có.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api-target="maps-android-backend.googleapis.com"
    --allowed-application="sha1_fingerprint=SHA1_FINGERPRINT,package_name=ANDROID_PACKAGE_NAME"

Đọc thêm về Google Cloud SDK, cài đặt SDK đám mây và các lệnh sau:

Bước tiếp theo

Bây giờ, bạn đã có khoá API, hãy tạo và định cấu hình một dự án như mô tả trong bài viết Thiết lập dự án Android Studio.