เอกสารนี้จะอธิบายวิธีเริ่มพัฒนาด้วย Nearby Messages API บน Android Nearby Messages API เป็นส่วนหนึ่งของ บริการ Google Play
ขั้นตอนที่ 1: ดาวน์โหลดบริการ Google Play
Nearby Messages API พร้อมใช้งานในอุปกรณ์ Android ที่มี บริการ Google Play 7.8.0 ขึ้นไป อุปกรณ์ที่ใช้ Android 2.3 ขึ้นไปที่มีแอป Google Play Store จะได้รับการอัปเดตบริการ Google Play โดยอัตโนมัติ หากต้องการตรวจสอบว่าอุปกรณ์ติดตั้งบริการ Google Play เวอร์ชันใด ให้ไปที่การตั้งค่า > แอป > บริการ Google Play
ตรวจสอบว่าคุณมีไลบรารีของไคลเอ็นต์ล่าสุดสำหรับบริการ Google Play ในโฮสต์การพัฒนา
- เปิด Android SDK Manager
ในส่วนลักษณะที่ปรากฏและลักษณะการทำงาน > การตั้งค่าระบบ > Android SDK > เครื่องมือ SDK ให้ตรวจสอบว่ามีการติดตั้งแพ็กเกจต่อไปนี้แล้ว
- บริการ Google Play
- ที่เก็บของ Google
ขั้นตอนที่ 2: สร้างบัญชี Google
หากต้องการใช้ Nearby Messages API คุณต้องมีบัญชี Google ทั้งนี้เพื่อให้คุณซึ่งเป็นนักพัฒนาซอฟต์แวร์เปิดใช้ Nearby API ได้ในขั้นตอนถัดไป (ผู้ใช้จะไม่จำเป็นต้องมีบัญชี Google) หากมีบัญชีอยู่แล้ว ไม่ต้องดำเนินการใดๆ หรือคุณอาจต้องการบัญชี Google แยก เพื่อวัตถุประสงค์ในการทดสอบ
ขั้นตอนที่ 3: รับคีย์ API
ทำตามขั้นตอนต่อไปนี้เพื่อเปิดใช้ Google Nearby Messages API สำหรับ Android และรับคีย์ API
- ไปที่ Google Developers Console
- สร้างหรือเลือกโปรเจ็กต์ที่จะใช้ลงทะเบียนแอปพลิเคชัน
- คลิกต่อไปเพื่อเปิดใช้ API
- ในหน้าข้อมูลเข้าสู่ระบบ ให้สร้างคีย์ Android ใหม่ (และตั้งค่าข้อมูลเข้าสู่ระบบ API)
หมายเหตุ: หากมีคีย์ Android อยู่แล้ว ก็ใช้คีย์นั้นได้ - ในกล่องโต้ตอบที่แสดง ให้ป้อนลายนิ้วมือ SHA-1 และชื่อแพ็กเกจของแอป ตัวอย่างเช่น
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
com.example.android.nearbyexample
- คีย์ API ของ Android ใหม่จะปรากฏในรายการคีย์ API สำหรับโปรเจ็กต์ของคุณ
คีย์ API เป็นสตริงอักขระดังนี้
AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0
รับลายนิ้วมือ SHA1 ของใบรับรอง
หากต้องการสร้างคีย์ API ใหม่สำหรับแอป Android คุณต้องมีลายนิ้วมือ SHA1 ของใบรับรองที่ใช้ลงนาม APK โดยข้อความจะแลกเปลี่ยนได้ระหว่างแอปที่ลงนามด้วยคีย์ API จากโปรเจ็กต์เดียวกันเท่านั้น
หากต้องการดูลายนิ้วมือนี้ ให้ทำดังนี้
- ค้นหาตำแหน่งของคีย์สโตร์
- ในเทอร์มินัล ให้เรียกใช้ยูทิลิตี
keytool
จาก JDK ตัวอย่างเช่น หากคุณใช้คีย์สโตร์`debug`
ให้ดำเนินการดังนี้ - เอาต์พุตของคำสั่ง
keytool
ประกอบด้วยลายนิ้วมือ SHA1 สำหรับใบรับรอง
$ keytool -alias \ androiddebugkey -keystore \ ~/.android/debug.keystore -list -v
หมายเหตุ: สำหรับคีย์สโตร์สำหรับการแก้ไขข้อบกพร่อง รหัสผ่านคือ android
ใน Mac OS และ Linux คีย์สโตร์ของการแก้ไขข้อบกพร่องมักจะอยู่ที่ ~/.android/
ใน Windows โดยปกติจะอยู่ที่ %USERPROFILE%\
ขั้นตอนที่ 4: กำหนดค่าโปรเจ็กต์
Android Studio ช่วยให้
สร้างโปรเจ็กต์สำหรับ Nearby Messages API ได้ง่ายๆ ทำตามขั้นตอนที่อธิบายไว้ในการสร้างโปรเจ็กต์เพื่อสร้างโปรเจ็กต์ใหม่ ใน Android Studio ให้เปิดไฟล์ build.gradle
ของโมดูล
แล้วเพิ่มไลบรารีของไคลเอ็นต์บริการ Google Play เป็นทรัพยากร Dependency
apply plugin: 'android' ... dependencies { compile 'com.google.android.gms:play-services-nearby:19.1.0' }
จากนั้นกำหนดค่าไฟล์ Manifest ด้วยคีย์ API ที่สร้างขึ้นในขั้นตอนก่อนหน้า ดังนี้
<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>
ขั้นตอนที่ 5: เผยแพร่และสมัครใช้บริการ
เริ่มใช้ 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 ต้องได้รับความยินยอมจากผู้ใช้ เมื่อเรียกใช้การเผยแพร่หรือสมัครใช้บริการเป็นครั้งแรก Nearby จะแสดงกล่องโต้ตอบแบบเลือกใช้