যখনই কোনও বেড়ার অবস্থা পরিবর্তন হয়, তখন আপনার অ্যাপটি PendingIntent দ্বারা একটি কলব্যাক পায়। আপনার অ্যাপটিকে প্রতিটি বেড়া ব্যবহার করার আগে নিবন্ধন করতে হবে।
একটি বেড়া নিবন্ধন করুন
একটি বেড়া নিবন্ধন করতে, FenceClient ব্যবহার করুন, এবং একটি FenceUpdateRequest তৈরি করতে, FenceClient.updateFences() ব্যবহার করুন। প্রতিটি বেড়া যোগ করার জন্য addFence() কল করুন।
একটি বেড়া নিবন্ধন এবং নিবন্ধনমুক্ত করার জন্য নিম্নলিখিতগুলি প্রয়োজন:
- একটি Google Play Services 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);
}
});
To create multiple fences with unique fence keys, call addFence() multiple times. You can use as many PendingIntent methods as you need to, but it's preferable to use a single PendingIntent for all fence callbacks. If you use a fence key that has already been registered to call addFence() , the AwarenessFence and PendingIntent values are overwritten for that key.
একটি বেড়া নিবন্ধনমুক্ত করুন
একটি বেড়া নিবন্ধনমুক্ত করতে, 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);
}
});
পরবর্তী ধাপ: ফেন্স কলব্যাক পরিচালনা করুন ।