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 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 cá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:
- Mở Trình quản lý SDK Android.
Trong mục Appearance & Behavior > System Settings > Android SDK > SDK Tools (Giao diện và hành vi > Cài đặt hệ thống > SDK Android > 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 ở 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 thử nghiệm.
Bước 3: Lấy khoá API
Hãy làm theo các bước sau để bật Nearby Messages API của Google 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, 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 của dự án.
Khoá API là một chuỗi ký tự, chẳng hạn như:
AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0
Lấy dấu vân tay SHA1 của chứng chỉ
Để tạo một khoá API mới cho ứng dụng Android, bạn cần có dấu vân tay SHA1 của chứng chỉ mà bạn dùng để ký APK. Tin nhắn chỉ có thể được trao đổi giữa các ứng dụng được ký bằng khoá API của cùng một dự án.
Cách lấy dấu vân tay này:
- Tìm vị trí của kho khoá.
- 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`
: - Đầu ra của lệnh
keytool
chứa dấu vân tay 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, thư mục 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 một dự án cho Nearby Messages API. 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 rồi 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 đượ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 yêu cầu người dùng đồng ý. Khi bạn gọi publish hoặc subscribe lần đầu tiên, Nearby sẽ hiện một hộp thoại chọn tham gia.