Khóa đăng ký và khóa API

Để sử dụng API Nhận biết của Google, bạn phải thêm một khoá API của Google vào ứng dụng. Loại khoá API mà bạn cần là khoá API của Android.

Tất cả ứng dụng Android đều được ký bằng chứng chỉ số mà bạn đang giữ khoá riêng tư. Để biết thêm thông tin về chứng chỉ kỹ thuật số, hãy tham khảo hướng dẫn dành cho Android về cách ký ứng dụng.

Các khóa API của Android được liên kết với các cặp gói chứng chỉ cụ thể. Bạn chỉ cần một khoá cho mỗi chứng chỉ, cho dù bạn có bao nhiêu người dùng ứng dụng.

Bạn cần thực hiện một số bước để nhận khóa cho ứng dụng của mình. Các bước này được mô tả chi tiết trong hướng dẫn này và tóm tắt như sau:

  1. Nhận thông tin về chứng chỉ của ứng dụng.
  2. Đăng ký dự án trong Google Developers Console và thêm API ngữ cảnh người dùng làm dịch vụ cho dự án.
  3. Yêu cầu khóa.
  4. Thêm khoá vào ứng dụng của bạn. Để làm như vậy, hãy thêm một phần tử vào tệp kê khai ứng dụng.

Tìm thông tin về chứng chỉ của ứng dụng

Khoá API dựa trên một dạng ngắn của chứng chỉ số của ứng dụng, hay còn gọi là vân tay SHA-1. Để hiển thị vân tay số SHA-1 cho chứng chỉ của bạn, trước tiên hãy đảm bảo bạn sử dụng đúng chứng chỉ. Bạn có thể có hai chứng chỉ sau đây để chọn:

  • 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 tạo bản gỡ lỗi. Chỉ sử dụng chứng chỉ này với các ứng dụng mà bạn đang thử nghiệm. Đừng tìm cách phát hành ứng dụng được ký bằng chứng chỉ gỡ lỗi. Chứng chỉ gỡ lỗi được mô tả chi tiết hơn trong phần Ký bản dựng gỡ lỗi trong tài liệu dành cho nhà phát triển Android.
  • Chứng chỉ phát hành: Bộ công cụ SDK Android sẽ tạo chứng chỉ này khi bạn tạo bản dựng phát hành. Bạn cũng có thể tạo chứng chỉ này bằng chương trình keytool. Hãy sử dụng chứng chỉ này khi bạn sẵn sàng phát hành ứng dụng ra thế giới.

Để biết thêm thông tin về keytool, hãy xem Tài liệu oracle.

Gỡ lỗi chứng chỉ

Hiển thị tệp tham chiếu chứng chỉ gỡ lỗi

Sử dụng chương trình keytool với tham số -v để hiển thị vân tay số SHA-1 của chứng chỉ. Để làm được điều này, vui lòng hoàn thành các bước sau:

  1. Tìm tệp kho khoá gỡ lỗi. Tên tệp là debug.keystore và được tạo khi bạn tạo dự án lần đầu tiên. Theo mặc định, tệp này được lưu trữ trong cùng thư mục với tệp Thiết bị Android ảo (AVD):

    • Hệ điều hành X và Linux: ~/.android/
    • Windows Vista và Windows 7: C:\Users\your_user_name\.android\
  2. Liệt kê tệp tham chiếu SHA-1:

    • Đối với Linux hoặc OS X, hãy mở cửa sổ dòng lệnh và nhập như sau:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • Đối với Windows Vista và Windows 7, hãy chạy lệnh sau:

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

Bạn sẽ thấy kết quả tương tự như dưới đây:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
Chứng chỉ phát hành

Hiển thị tệp tham chiếu chứng chỉ phát hành

Sử dụng chương trình keytool với tham số -v để hiển thị vân tay số SHA-1 của chứng chỉ. Để làm được điều này, vui lòng hoàn thành các bước sau:

  1. Tìm tệp kho khoá chứng chỉ phát hành của bạn. Không có tên hoặc vị trí mặc định cho kho khoá phát hành. Nếu không chỉ định mã này khi xây dựng ứng dụng để phát hành, bản dựng sẽ không được ký .apk và bạn phải ký trước khi có thể phát hành. Đối với chứng chỉ phát hành, bạn cũng cần có bí danh của chứng chỉ, mật khẩu cho kho khoá và chứng chỉ.
  2. Nhập thông tin sau để liệt kê bí danh của tất cả các khóa trong kho khoá:

    keytool -list -keystore your_keystore_name
          
  3. Thay thế your_keystore_name bằng tên và đường dẫn đầy đủ đủ điều kiện của kho khoá. Thêm phần mở rộng .keystore. Nhập mật khẩu của kho khoá khi được nhắc. Sau đó, keytool sẽ hiển thị tất cả các bí danh trong kho khoá.
  4. Nhập thông tin sau tại một thiết bị đầu cuối hoặc lời nhắc lệnh:

          keytool -list -v -keystore your_keystore_name -alias your_alias_name
          
  5. Thay thế your_keystore_name bằng tên và đường dẫn đầy đủ đủ điều kiện của kho khoá. Thêm phần mở rộng .keystore.
  6. Thay thế your_alias_name bằng bí danh mà bạn chỉ định cho chứng chỉ khi tạo.

Bạn sẽ thấy kết quả tương tự như dưới đây:

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

Dòng bắt đầu bằng SHA1 chứa vân tay số SHA-1 của chứng chỉ. Vân tay là một chuỗi gồm 20 số thập lục phân có hai chữ số được phân tách bằng dấu hai chấm.

Nhận khóa API từ Google Developers Console

Để bắt đầu sử dụng API Nhận biết của Google, hãy nhấp vào nút Nhận khóa. Phần này liên kết với Google Developers Console, hướng dẫn bạn thực hiện quy trình và tự động kích hoạt API Nhận biết.

Nhận khóa

Ngoài ra, hãy làm theo các bước sau để nhận khóa API:

  1. Chuyển đến Google Developers Console.
  2. Chọn một dự án hoặc tạo dự án mới.
  3. Nhấp vào Tiếp tục để bật API Nhận biết.
  4. Trên trang "Thông tin xác thực", hãy tạo một khoá Android rồi đặt thông tin xác thực API.

  5. Trong hộp thoại "Tạo khóa", bạn cần giới hạn mức sử dụng trong các ứng dụng Android. Để làm như vậy, hãy nhập tên gói và vân tay số SHA-1 của ứng dụng như trong ví dụ sau:

    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    
    com.example.android.awareness-example
    
  6. Nhấp vào Tạo. Khoá API mới của Android sẽ xuất hiện trong danh sách khoá API cho dự án của bạn. Khoá API là một chuỗi ký tự, như sau:

    AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
    

Giờ đây, khi đã có khoá API, bạn có thể thêm khoá đó vào tệp kê khai của ứng dụng, như mô tả trong hướng dẫn Bắt đầu.

Kích hoạt API bổ sung

API Nhận biết cho phép bạn truy cập vào nhiều loại dữ liệu theo ngữ cảnh, chẳng hạn như báo hiệu. Để sử dụng các loại này, bạn cần bật các API tương ứng trong Google Developers Console.

Dịch vụ Phương thức API Nhận biết API để bật
Đèn hiệu SnapshotApi.getBeaconState(), FenceApi.BeaconFence API Nearby Messages