เมื่อผู้ใช้ให้สิทธิ์ที่จำเป็นทั้งหมดแล้ว แอปของคุณจะเริ่ม ลงโฆษณาและค้นพบเพื่อค้นหาอุปกรณ์ที่อยู่ใกล้เคียง
ก่อนอื่นให้เลือก Strategy สำหรับกรณีการใช้งานของคุณ
Strategy ที่คุณเลือกจะเป็นตัวกำหนดโทโพโลยีการเชื่อมต่อสำหรับแอปของคุณ (
ผู้ลงโฆษณา N เป็น N หรือผู้ลงโฆษณา M ต่อ N ครั้ง)
ในอุปกรณ์ที่จะโฆษณา ให้โทรหา startAdvertising() พร้อมระบุ
Strategy และพารามิเตอร์ serviceId ที่ระบุแอปของคุณ
ในอุปกรณ์ที่จะค้นหาผู้ลงโฆษณาที่อยู่ใกล้เคียง ให้โทรหา startDiscovery() ด้วย
Strategy และ serviceId เดียวกัน
ค่า serviceId ต้องระบุแอปของคุณแบบไม่ซ้ำ ตามแนวทางปฏิบัติแนะนำ ให้ใช้
ชื่อแพ็กเกจของแอป (เช่น com.google.example.myapp)
ตัวอย่างต่อไปนี้แสดงวิธีการโฆษณา
private void startAdvertising() {
AdvertisingOptions advertisingOptions =
new AdvertisingOptions.Builder().setStrategy(STRATEGY).build();
Nearby.getConnectionsClient(context)
.startAdvertising(
getLocalUserName(), SERVICE_ID, connectionLifecycleCallback, advertisingOptions)
.addOnSuccessListener(
(Void unused) -> {
// We're advertising!
})
.addOnFailureListener(
(Exception e) -> {
// We were unable to start advertising.
});
}พารามิเตอร์ ConnectionLifecycleCallback คือ Callback ที่จะเรียกใช้
เมื่อผู้ค้นพบขอเชื่อมต่อกับผู้ลงโฆษณา โปรดดูที่จัดการ
การเชื่อมต่อสำหรับรายละเอียดเกี่ยวกับ
การกำหนดการเรียกกลับนี้
ตัวอย่างต่อไปนี้แสดงวิธีการค้นหาข้อมูล
private void startDiscovery() {
DiscoveryOptions discoveryOptions =
new DiscoveryOptions.Builder().setStrategy(STRATEGY).build();
Nearby.getConnectionsClient(context)
.startDiscovery(SERVICE_ID, endpointDiscoveryCallback, discoveryOptions)
.addOnSuccessListener(
(Void unused) -> {
// We're discovering!
})
.addOnFailureListener(
(Exception e) -> {
// We're unable to start discovering.
});
}พารามิเตอร์ EndpointDiscoveryCallback คือ Callback ที่จะเรียกใช้
เมื่อพบผู้ลงโฆษณาที่อยู่ใกล้เคียงหรือหาไม่เจอ โปรดดูที่จัดการ
การเชื่อมต่อสำหรับรายละเอียดเกี่ยวกับ
การกำหนดการเรียกกลับนี้
โทรหา stopAdvertising() เมื่อคุณไม่จำเป็นต้องโฆษณาอีกต่อไป และ
stopDiscovery()เมื่อคุณไม่จำเป็นต้องค้นหาอีกต่อไป