একটি বেড়ার বর্তমান অবস্থা জানতে, FenceClient.queryFences()
কল করুন এবং বেড়ার জন্য ক্যোয়ারী করার জন্য বেড়া কী পাস করুন৷
নিম্নলিখিত উদাহরণটি একটি FenceStateMap
পেতে FenceClient.queryFences()
কল করে, এবং তারপরে বর্তমান অবস্থা, পূর্ববর্তী অবস্থা এবং বেড়াটি শেষবার আপডেট করার সময় দেখাতে একটি FenceState
মান ফেরত দিতে FenceStateMap
ব্যবহার করে:
protected void queryFence(final String fenceKey) {
Awareness.getFenceClient(this)
.queryFences(FenceQueryRequest.forFences(Arrays.asList(fenceKey)))
.addOnSuccessListener(new OnSuccessListener<FenceQueryResponse>() {
@Override
public void onSuccess(FenceQueryResponse response) {
FenceStateMap map = response.getFenceStateMap();
for (String fenceKey : map.getFenceKeys()) {
FenceState fenceState = map.getFenceState(fenceKey);
Log.i(TAG, "Fence " + fenceKey + ": "
+ fenceState.getCurrentState()
+ ", was="
+ fenceState.getPreviousState()
+ ", lastUpdateTime="
+ DATE_FORMAT.format(
new Date(fenceState.getLastFenceUpdateTimeMillis())));
}
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e(TAG, "Could not query fence: " + fenceKey);
return;
}
});
}