বেড়া রাজ্যের জন্য ক্যোয়ারী

একটি বেড়ার বর্তমান অবস্থা জানতে, 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;
            }
        });
}