意识 API 查询围栏状态
Awareness API Query for Fence State
我正在尝试通过 Awareness API 获得围栏状态。这是关于此的 documentation。但是...使用时:
Awareness.FenceApi.queryFences
我可以看到它的 deprecated,而是需要使用:
Awareness.getFenceClient
任何人都可以给我一个如何使用 getFenceClient 获取围栏状态的例子吗?
知道了:
Awareness.getFenceClient(context).queryFences(FenceQueryRequest.forFences(Arrays.asList(key)))
.addOnSuccessListener(new OnSuccessListener<FenceQueryResponse>() {
@Override
public void onSuccess(FenceQueryResponse fenceQueryResponse) {
FenceStateMap map = fenceQueryResponse.getFenceStateMap();
for (String fenceKey : map.getFenceKeys()) {
FenceState fenceState = map.getFenceState(fenceKey);
Log.i(TAG, "Fence " + fenceKey + ": "
+ fenceState.getCurrentState()
+ ", was="
+ fenceState.getPreviousState());
}
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, "Failed: " + e);
}
});
我正在尝试通过 Awareness API 获得围栏状态。这是关于此的 documentation。但是...使用时:
Awareness.FenceApi.queryFences
我可以看到它的 deprecated,而是需要使用:
Awareness.getFenceClient
任何人都可以给我一个如何使用 getFenceClient 获取围栏状态的例子吗?
知道了:
Awareness.getFenceClient(context).queryFences(FenceQueryRequest.forFences(Arrays.asList(key)))
.addOnSuccessListener(new OnSuccessListener<FenceQueryResponse>() {
@Override
public void onSuccess(FenceQueryResponse fenceQueryResponse) {
FenceStateMap map = fenceQueryResponse.getFenceStateMap();
for (String fenceKey : map.getFenceKeys()) {
FenceState fenceState = map.getFenceState(fenceKey);
Log.i(TAG, "Fence " + fenceKey + ": "
+ fenceState.getCurrentState()
+ ", was="
+ fenceState.getPreviousState());
}
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, "Failed: " + e);
}
});