เริ่มต้นใช้งาน

เอกสารนี้อธิบายวิธีเริ่มต้นพัฒนาด้วย Nearby Messages API ใน Android Nearby Messages API เป็นส่วนหนึ่งของบริการ Google Play

ขั้นตอนที่ 1: ติดตั้งบริการ Google Play

API ข้อความใกล้เคียงพร้อมให้บริการในอุปกรณ์ Android ที่มี บริการ Google Play เวอร์ชัน 7.8.0 ขึ้นไป อุปกรณ์ที่ใช้ Android 2.3 ขึ้นไปซึ่งมีแอป Google Play Store จะได้รับการอัปเดตบริการ Google Play โดยอัตโนมัติ หากต้องการตรวจสอบ ว่าบริการ Google Play เวอร์ชันใดติดตั้งอยู่ในอุปกรณ์ ให้ไปที่ การตั้งค่า > แอป > บริการ Google Play

ตรวจสอบว่าคุณมีไลบรารีของไคลเอ็นต์สำหรับบริการ Google Play เวอร์ชันล่าสุดในโฮสต์การพัฒนา

  1. เปิด Android SDK Manager
  2. ในส่วนลักษณะที่ปรากฏและลักษณะการทำงาน > การตั้งค่าระบบ > Android SDK > เครื่องมือ SDK ตรวจสอบว่าได้ติดตั้งแพ็กเกจต่อไปนี้แล้ว

    • บริการ Google Play
    • ที่เก็บข้อมูลของ Google

ขั้นตอนที่ 2: สร้างบัญชี Google

หากต้องการใช้ Nearby Messages API คุณต้องมีบัญชี Google เพื่อให้คุณซึ่งเป็นนักพัฒนาแอปเปิดใช้ Nearby API ในขั้นตอนถัดไปได้ (ผู้ใช้ไม่จำเป็นต้องมีบัญชี Google) หากมีบัญชีอยู่แล้ว คุณก็พร้อมใช้งานได้ นอกจากนี้ คุณอาจต้องการ บัญชี Google แยกต่างหากเพื่อวัตถุประสงค์ในการทดสอบด้วย

ขั้นตอนที่ 3: รับคีย์ API

ทำตามขั้นตอนต่อไปนี้เพื่อเปิดใช้ Google Nearby Messages API สำหรับ Android และรับคีย์ API

  1. ไปที่ Google Developers Console
  2. สร้างหรือเลือกโปรเจ็กต์เพื่อลงทะเบียนแอปพลิเคชัน
  3. คลิกต่อไปเพื่อเปิดใช้ API
  4. ในหน้าข้อมูลเข้าสู่ระบบ ให้สร้างคีย์ Android ใหม่ (และตั้งค่าข้อมูลเข้าสู่ระบบ API)
    หมายเหตุ: หากมีคีย์ Android อยู่แล้ว คุณจะใช้คีย์นั้นได้
  5. ในกล่องโต้ตอบที่ปรากฏ ให้ป้อนลายนิ้วมือ 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
  6. คีย์ API ใหม่ของ Android จะปรากฏในรายการคีย์ API สำหรับโปรเจ็กต์ คีย์ API คือสตริงของอักขระ เช่น
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

รับลายนิ้วมือ SHA1 ของใบรับรอง

หากต้องการสร้างคีย์ API ใหม่สำหรับแอป Android คุณต้องมีลายนิ้วมือ SHA1 ของใบรับรองที่ใช้เพื่อลงนาม APK ข้อความจะแลกเปลี่ยนได้เฉพาะ ระหว่างแอปที่ลงนามด้วยคีย์ API จากโปรเจ็กต์เดียวกันเท่านั้น

วิธีดูลายนิ้วมือนี้

  1. ค้นหาตำแหน่งของคลังคีย์
  2. ในเทอร์มินัล ให้เรียกใช้ยูทิลิตี keytool จาก JDK ตัวอย่างเช่น หากคุณใช้`debug`ที่เก็บคีย์ ให้ทำดังนี้
  3. $ keytool -alias \
    androiddebugkey -keystore \
    ~/.android/debug.keystore -list -v
    

    หมายเหตุ: สำหรับคีย์สโตร์การแก้ไขข้อบกพร่อง รหัสผ่านคือ android ใน Mac OS และ Linux โดยปกติแล้วคลังคีย์สำหรับแก้ไขข้อบกพร่องจะอยู่ที่ ~/.android/debug.keystore ใน Windows โดยปกติจะอยู่ที่ %USERPROFILE%\.android\debug.keystore

  4. เอาต์พุตของคำสั่ง keytool มีลายนิ้วมือ SHA1 สำหรับใบรับรอง

ขั้นตอนที่ 4: กำหนดค่าโปรเจ็กต์

Android Studio ช่วยให้สร้างโปรเจ็กต์สำหรับ Nearby Messages API ได้ง่าย ทำตามขั้นตอนที่อธิบายไว้ ในการสร้างโปรเจ็กต์ เพื่อสร้างโปรเจ็กต์ใหม่ ใน Android Studio ให้เปิดไฟล์ build.gradle สำหรับ โมดูลของคุณ แล้วเพิ่มไลบรารีของไคลเอ็นต์ Google Play Services เป็นทรัพยากร Dependency ดังนี้

apply plugin: 'android'
...

dependencies {
    compile 'com.google.android.gms:play-services-nearby:19.3.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 ต้องได้รับความยินยอมจากผู้ใช้ เมื่อมีการเรียกใช้ publish หรือ subscribe เป็นครั้งแรก Nearby จะแสดงกล่องโต้ตอบการเลือกเข้าร่วม