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 Messages API trên Android. Nearby Messages API là một phần của Dịch vụ Google Play.

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

Nearby Messages API có trên các thiết bị Android chạy Dịch vụ Google Play phiên bản 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 sẽ tự động nhận được bản cập nhật cho Dịch vụ Google Play. Để kiểm tra phiên bản Dịch vụ Google Play đượ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 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:

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

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

Bước 2: Tạo Tài khoản Google

Để sử dụng API Nearby Messages, bạn cần có Tài khoản Google. Điều này là để bạn (nhà phát triển) có thể bật API Nearby ở bước tiếp theo (người dùng sẽ không cần có Tài khoản Google). Nếu đã có tài khoản thì bạn có thể bỏ qua bước này. 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

Hãy làm theo các bước sau để bật API Google Nearby Messages cho Android và lấy 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 xuất hiện, 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 Android mới của bạn sẽ xuất hiện trong danh sách khoá API cho dự án. Khoá API là một chuỗi ký tự, chẳng hạn như:
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

Lấy vân tay SHA1 của chứng chỉ

Để 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ý APK. Bạn chỉ có thể trao đổi thông báo giữa các ứng dụng được ký bằng khoá API từ cùng một dự án.

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

  1. Tìm vị trí của kho khoá.
  2. Trong một 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, thư mục 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 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 API Tin nhắn lân cận. Làm theo các bước được mô tả trong phần Tạo dự án để tạo dự án mới. Trong Android Studio, hãy mở tệp build.gradle cho mô-đun 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.3.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 Messages API.

@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 Messages API yêu cầu người dùng đồng ý. Khi bạn gọi lệnh phát hành hoặc đăng ký lần đầu tiên, tính năng Gần đây sẽ hiển thị một hộp thoại chọn tham gia.