একটি বেড়া নিবন্ধন

যখনই বেড়ার অবস্থা পরিবর্তিত হয় তখন আপনার অ্যাপ PendingIntent দ্বারা একটি কলব্যাক পায়। আপনার অ্যাপটি ব্যবহার করার আগে প্রতিটি বেড়া নিবন্ধন করতে হবে।

একটি বেড়া নিবন্ধন

একটি বেড়া নিবন্ধন করতে, FenceClient ব্যবহার করুন, এবং একটি FenceUpdateRequest তৈরি করতে, FenceClient.updateFences() ব্যবহার করুন। প্রতিটি বেড়া যোগ করার জন্য addFence() কে কল করুন।

একটি বেড়া নিবন্ধন এবং নিবন্ধনমুক্ত করার জন্য নিম্নলিখিতগুলি প্রয়োজন:

  • একটি Google Play পরিষেবা API ক্লায়েন্ট উদাহরণ।
  • একটি AwarenessFence উদাহরণ, যা বেড়া নিজেই.
  • রাজ্যের পরিবর্তনগুলি পরিচালনা করার জন্য একটি PendingIntent
  • একটি বেড়া কী, যা একটি স্ট্রিং যা বেড়া চিহ্নিত করে এবং একটি AwarenessFence - PendingIntent জোড়ার মানচিত্র।

নিম্নলিখিত কোড উদাহরণটি এমন একটি পদ্ধতি দেখায় যা একটি বেড়া নিবন্ধন করতে updateFences() কল করে:

    Awareness.getFenceClient(this).updateFences(new FenceUpdateRequest.Builder()
        .addFence(FENCE_KEY, exercisingWithHeadphonesFence, mPendingIntent)
        .build())
        .addOnSuccessListener(new OnSuccessListener<Void>() {
            @Override
            public void onSuccess(Void aVoid) {
                Log.i(TAG, "Fence was successfully registered.");
            }
        })
        .addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(@NonNull Exception e) {
                Log.e(TAG, "Fence could not be registered: " + e);
            }
        });

অনন্য বেড়া কী দিয়ে একাধিক বেড়া তৈরি করতে, একাধিকবার addFence() কল করুন। আপনি যতগুলি প্রয়োজন ততগুলি PendingIntent পদ্ধতি ব্যবহার করতে পারেন, তবে সমস্ত বেড়া কলব্যাকের জন্য একটি একক PendingIntent ব্যবহার করা বাঞ্ছনীয়৷ আপনি যদি একটি বেড়া কী ব্যবহার করেন যা ইতিমধ্যেই addFence() কল করতে নিবন্ধিত হয়েছে, তাহলে সেই কীটির জন্য AwarenessFence এবং PendingIntent মানগুলি ওভাররাইট করা হয়।

একটি বেড়া নিবন্ধনমুক্ত করুন

একটি বেড়া আনরেজিস্টার করতে, getFenceClient().updateFences() কল করুন, এবং একটি বেড়া আপডেটের অনুরোধ তৈরি করতে FenceUpdateRequest.Builder() ব্যবহার করুন৷ তারপরে কল করুন removeFence() , নিম্নলিখিত উদাহরণটি দেখায়:

 Awareness.getFenceClient(this).updateFences(new FenceUpdateRequest.Builder()
     .removeFence(FENCE_KEY)
     .build())
     .addOnSuccessListener(new OnSuccessListener<Void>() {
         @Override
         public void onSuccess(Void aVoid) {
             Log.i(TAG, "Fence was successfully unregistered.");
         }
     })
     .addOnFailureListener(new OnFailureListener() {
         @Override
         public void onFailure(@NonNull Exception e) {
             Log.e(TAG, "Fence could not be unregistered: " + e);
         }
     });

পরবর্তী ধাপ: বেড়া কলব্যাক পরিচালনা করুন