Reklam verin ve keşfedin

Kullanıcı gerekli tüm izinleri verdikten sonra uygulamanız reklam ve keşif özelliklerini kullanarak yakındaki cihazları keşfedebilirsiniz.

Öncelikle kullanım alanınız için bir Strategy seçin. Seçtiğiniz Strategy, uygulamanızın bağlantı topolojisini belirler (tek bir N reklamverene veya M reklamverenlere N keşfet).

Reklam yayınlanacak cihazlarda, startAdvertising() numaralı telefonu Strategy ve uygulamanızı tanımlayan bir serviceId parametresi.

Yakındaki reklamverenleri keşfedecek cihazlarda startDiscovery() numaralı telefonu şu hesapla arayın: aynı Strategy ve serviceId.

serviceId değeri, uygulamanızı benzersiz şekilde tanımlamalıdır. En iyi uygulama olarak, Uygulamanızın paket adı (örneğin, com.google.example.myapp).

Aşağıdaki örnekte, nasıl reklam yayınlayacağınız gösterilmektedir:

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 parametresi, çağrılacak geri çağırma değeridir kullanıcılar reklamverene bağlanmak istediğinde. Bkz. Yönetme Bağlantılar bölümünde tanımlanıyor.

Aşağıdaki örnekte, nasıl keşfedileceği gösterilmektedir:

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 parametresi, çağrılacak geri çağırma değeridir yakındaki reklamverenler keşfedildiğinde veya kaybolduğunda. Bkz. Yönetme Bağlantılar bölümünde tanımlanıyor.

Artık reklam yayınlamanıza gerek kalmadığında stopAdvertising() numaralı telefonu arayın ve Artık keşfetmenize gerek kalmadığında stopDiscovery().