Bắt đầu

Tài liệu này giải thích cách bắt đầu phát triển bằng Nearby Message API trên Android. Nearby Message API là một phần của Dịch vụ Google Play.

Bước 1: Tải Dịch vụ Google Play

API Nearby Message có trên các thiết bị Android chạy Dịch vụ Google Play 7.8.0 trở lên. Các thiết bị chạy Android 2.3 trở lên có ứng dụng Cửa hàng Google Play tự động nhận bản cập nhật cho Dịch vụ Google Play. Để kiểm tra xem phiên bản Dịch vụ Google Play nào được cài đặt trên thiết bị của bạn, hãy chuyển đến phần Cài đặt > Ứng dụng > Dịch vụ Google Play.

Đảm bảo rằng bạn có thư viện ứng dụng mới nhất cho Dịch vụ Google Play trên máy chủ phát triển của mình:

  1. Mở Android SDK Manager (Trình quản lý SDK Android).
  2. Trong phần Appearance & Behavior > System Settings > Android SDK > SDK Tools (Giao diện và hành vi > Cài đặt hệ thống > SDK Android > Bộ công cụ SDK), hãy đảm bảo rằng các gói sau đã được cài đặt:

    • Dịch vụ Google Play
    • Kho lưu trữ của Google

Bước 2: Đăng ký Tài khoản Google

Để sử dụng Nearby Messages API, bạn cần có Tài khoản Google. Việc này giúp bạn, với vai trò nhà phát triển, có thể bật Nearby API trong bước tiếp theo (người dùng của bạn sẽ không cần có Tài khoản Google). Nếu đã có tài khoản thì bạn đã hoàn tất. Bạn cũng nên có một Tài khoản Google riêng cho mục đích thử nghiệm.

Bước 3: Lấy khoá API

Làm theo các bước sau để bật Google Nearby Message API cho Android và nhận khoá API:

  1. Chuyển đến Google Developers Console.
  2. Tạo hoặc chọn một dự án để đăng ký ứng dụng.
  3. Nhấp vào Tiếp tục để bật API.
  4. Trên trang Thông tin xác thực, hãy tạo một khoá Android mới (và đặt Thông tin xác thực API).
    Lưu ý: Nếu đã có khoá Android, bạn có thể sử dụng khoá đó.
  5. Trong hộp thoại hiện ra, hãy nhập vân tay số SHA-1 và tên gói của ứng dụng. Ví dụ:
    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    com.example.android.nearbyexample
  6. Khoá API mới trên 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ự, có dạng như sau:
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

Lấy vân tay số SHA1 cho chứng chỉ của bạn

Để tạo khoá API mới cho ứng dụng Android, bạn cần có vân tay số SHA1 của chứng chỉ mà bạn dùng để ký tệp APK. Bạn chỉ có thể trao đổi tin nhắn giữa các ứng dụng được ký bằng khoá API trong cùng một dự án.

Cách lấy vân tay này:

  1. Tìm vị trí của kho khoá.
  2. Trong thiết bị đầu cuối, hãy chạy tiện ích keytool từ JDK. Ví dụ: nếu bạn đang sử dụng kho khoá `debug`:
  3. $ keytool -alias \
    androiddebugkey -keystore \
    ~/.android/debug.keystore -list -v
    

    Lưu ý: Đối với kho khoá gỡ lỗi, mật khẩu là android. Trên Mac OS và Linux, kho khoá gỡ lỗi thường nằm ở ~/.android/debug.keystore. Trên Windows, tệp này thường nằm ở %USERPROFILE%\.android\debug.keystore.

  4. Kết quả của lệnh keytool chứa vân tay số SHA1 dành cho chứng chỉ.

Bước 4: Định cấu hình dự án

Android Studio giúp bạn dễ dàng tạo dự án cho Nearby Message API (API Thông báo lân cận). Làm theo các bước được mô tả trong phần Tạo dự án để tạo một dự án mới. Trong Android Studio, hãy mở tệp build.gradle cho mô-đun của bạn và thêm thư viện ứng dụng Dịch vụ Google Play làm phần phụ thuộc:

apply plugin: 'android'
...

dependencies {
    compile 'com.google.android.gms:play-services-nearby:19.1.0'
}

Sau đó, hãy định cấu hình tệp kê khai bằng Khoá API đã tạo ở bước trước:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.google.sample.app" >
    <application ...>
        <meta-data
            android:name="com.google.android.nearby.messages.API_KEY"
            android:value="API_KEY" />
        <activity>
        ...
        </activity>
    </application>
</manifest>

Bước 5: Xuất bản và đăng ký

Trong ứng dụng, hãy bắt đầu sử dụng Nearby Message API (API Thông báo lân cận).

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ...
    mMessageListener = new MessageListener() {
        @Override
        public void onFound(Message message) {
            Log.d(TAG, "Found message: " + new String(message.getContent()));
        }

        @Override
        public void onLost(Message message) {
            Log.d(TAG, "Lost sight of message: " + new String(message.getContent()));
        }
    }

    mMessage = new Message("Hello World".getBytes());
}

@Override
public void onStart() {
    super.onStart();
    ...
    Nearby.getMessagesClient(this).publish(mMessage);
    Nearby.getMessagesClient(this).subscribe(mMessageListener);
}

@Override
public void onStop() {
    Nearby.getMessagesClient(this).unpublish(mMessage);
    Nearby.getMessagesClient(this).unsubscribe(mMessageListener);
    ...
    super.onStop();
}

Nearby Message API cần có sự đồng ý của người dùng. Khi tính năng xuất bản hoặc đăng ký được gọi lần đầu tiên, tính năng Lân cận sẽ hiển thị hộp thoại chọn sử dụng.