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 có 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 sẽ tự động nhận được 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:
- Mở Trình quản lý SDK Android.
Trong phần Appearance & Behavior > System Settings > Android SDK > Bộ công cụ SDK (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 bạn đã cài đặt các gói sau:
- Dịch vụ Google Play
- Kho lưu trữ của Google
Bước 2: Tạo Tài khoản Google
Để sử dụng Nearby Messages API, 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 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 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 kiểm thử.
Bước 3: Lấy khoá API
Hãy làm theo các bước sau để bật Google Nearby Messages API cho Android và nhận khoá API:
- Chuyển đến Google Developers Console.
- Tạo hoặc chọn một dự án để đăng ký ứng dụng của bạn.
- Nhấp vào Tiếp tục để bật API.
- 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 hiện có, bạn có thể sử dụng khoá đó. - 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
- 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ự, có dạng như sau:
AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0
Lấy vân tay số 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ý tệp APK. 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:
- Tìm vị trí của kho khoá.
- Trong dòng lệnh, hãy chạy tiện ích
keytooltừ JDK. Ví dụ: nếu bạn đang sử dụng kho khoá`debug`: - Kết quả của lệnh
keytoolchứa vân tay số SHA1 cho chứng chỉ.
$ 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 hệ điều hành Mac và Linux, kho khoá gỡ lỗi thường nằm ở ~/.android/. Trên Windows, kho khoá này thường nằm ở %USERPROFILE%\.
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 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.5.1'
}
Sau đó, hãy định cấu hình tệp kê khai bằng Khoá API được 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 của bạn, 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 cần có sự đồng ý của người dùng. Khi xuất bản hoặc đăng ký được gọi lần đầu, Nearby sẽ hiển thị hộp thoại chọn tham gia.