Iklankan dan temukan

Setelah pengguna memberikan semua izin yang diperlukan, aplikasi Anda dapat mulai beriklan dan menjelajah untuk menemukan perangkat di sekitar.

Pertama, pilih Strategy untuk kasus penggunaan Anda. Strategy yang Anda pilih menentukan topologi koneksi untuk aplikasi Anda (salah satu pengiklan ke penemu N, atau pengiklan M untuk penemu N).

Pada perangkat yang akan beriklan, panggil startAdvertising() dengan Strategy dan parameter serviceId yang mengidentifikasi aplikasi Anda.

Di perangkat yang akan menemukan pengiklan di sekitar, panggil startDiscovery() dengan Strategy dan serviceId yang sama.

Nilai serviceId harus mengidentifikasi aplikasi Anda secara unik. Sebagai praktik terbaik, gunakan nama paket aplikasi Anda (misalnya, com.google.example.myapp).

Contoh berikut menunjukkan cara beriklan:

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.
          });
}

Parameter ConnectionLifecycleCallback adalah callback yang akan dipanggil saat penemu meminta untuk terhubung dengan pengiklan. Lihat Mengelola Koneksi untuk mengetahui detail tentang yang menentukan callback ini.

Contoh berikut menunjukkan cara menemukan:

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.
          });
}

Parameter EndpointDiscoveryCallback adalah callback yang akan dipanggil saat pengiklan di sekitar ditemukan atau hilang. Lihat Mengelola Koneksi untuk mengetahui detail tentang yang menentukan callback ini.

Hubungi stopAdvertising() saat Anda tidak perlu lagi beriklan, dan stopDiscovery() saat Anda tidak perlu lagi menemukannya.