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

เอกสารนี้อธิบายวิธีเริ่มต้นพัฒนาด้วย 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 เป็นทรัพยากร 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 ต้องได้รับความยินยอมของผู้ใช้ เมื่อมีการเรียกใช้การเผยแพร่หรือการติดตามเป็นครั้งแรก Nearby จะแสดงกล่องโต้ตอบการเลือกเข้าร่วม