বিজ্ঞাপন এবং আবিষ্কার

একবার ব্যবহারকারী সমস্ত প্রয়োজনীয় অনুমতি মঞ্জুর করলে, আপনার অ্যাপটি আশেপাশের ডিভাইসগুলি খুঁজে পেতে বিজ্ঞাপন দেওয়া এবং আবিষ্কার করতে শুরু করতে পারে৷

প্রথমে, আপনার ব্যবহারের ক্ষেত্রে একটি Strategy বেছে নিন । আপনার নির্বাচন করা Strategy আপনার অ্যাপের সংযোগ টপোলজি নির্ধারণ করে (একজন বিজ্ঞাপনদাতা থেকে N আবিষ্কারক, অথবা M বিজ্ঞাপনদাতাদের থেকে N আবিষ্কারক)।

যে ডিভাইসগুলিতে বিজ্ঞাপন দেওয়া হবে, সেখানে কাঙ্ক্ষিত Strategy এবং একটি serviceId প্যারামিটার সহ startAdvertising() কে কল করুন যা আপনার অ্যাপকে শনাক্ত করে৷

যে ডিভাইসগুলি কাছাকাছি বিজ্ঞাপনদাতাদের আবিষ্কার করবে, একই Strategy এবং serviceId সহ startDiscovery() কে কল করুন৷

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 প্যারামিটার হল সেই কলব্যাক যা আবিষ্কারকারীরা যখন বিজ্ঞাপনদাতার সাথে সংযোগ করার জন্য অনুরোধ করে তখন ডাকা হবে। এই কলব্যাকটি সংজ্ঞায়িত করার বিষয়ে বিস্তারিত জানার জন্য সংযোগগুলি পরিচালনা করুন দেখুন৷

নিম্নলিখিত উদাহরণ দেখায় কিভাবে আবিষ্কার করতে হয়:

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 প্যারামিটার হল সেই কলব্যাক যা আশেপাশের বিজ্ঞাপনদাতাদের খুঁজে পাওয়া বা হারিয়ে গেলে ডাকা হবে। এই কলব্যাকটি সংজ্ঞায়িত করার বিষয়ে বিস্তারিত জানার জন্য সংযোগগুলি পরিচালনা করুন দেখুন৷

যখন আপনার আর বিজ্ঞাপনের প্রয়োজন হবে না তখন stopAdvertising() এ কল করুন এবং যখন আপনার আর আবিষ্কারের প্রয়োজন নেই তখন stopDiscovery() কল করুন।