Android 如何检查围栏密钥是否已注册为Aware API?
我对谷歌宣传围栏API有两个问题:Android 如何检查围栏密钥是否已注册为Aware API?,android,google-awareness,Android,Google Awareness,我对谷歌宣传围栏API有两个问题: 我们是否有方法检查具有给定围栏密钥的围栏是否已注册 如果我不小心用同一个围栏密钥注册了2个围栏,会发生什么情况 要检查围栏是否已注册,请创建一个并检查FenceStateMap是否包含围栏密钥 下面是示例代码: protected void queryFence(final String fenceKey) { Awareness.FenceApi.queryFences(mGoogleApiClient, FenceQuery
FenceStateMap
是否包含围栏密钥protected void queryFence(final String fenceKey) {
Awareness.FenceApi.queryFences(mGoogleApiClient,
FenceQueryRequest.forFences(Arrays.asList(fenceKey)))
.setResultCallback(new ResultCallback<FenceQueryResult>() {
@Override
public void onResult(@NonNull FenceQueryResult fenceQueryResult) {
if (!fenceQueryResult.getStatus().isSuccess()) {
Log.e(TAG, "Could not query fence: " + fenceKey);
return;
}
FenceStateMap map = fenceQueryResult.getFenceStateMap();
if (!map.getFenceKeys().contains(fenceKey)) {
// Fence is not registered.
}
}
});
}
protectedvoid queryFence(最终字符串fenceKey){
意识。FenceApi。查询(mGoogleApiClient,
FenceQueryRequest.forFences(Arrays.asList(fenceKey)))
.setResultCallback(新的ResultCallback(){
@凌驾
public void onResult(@NonNull FenceQueryResult FenceQueryResult){
如果(!fenceQueryResult.getStatus().isSuccess()){
Log.e(标记“无法查询围栏:+fenceKey”);
返回;
}
FenceStateMap=fenceQueryResult.getFenceStateMap();
如果(!map.getFenceKeys().包含(fenceKey)){
//围栏未注册。
}
}
});
}