android – 围栏状态的Awareness API查询

我试图通过Awareness API获得fence状态.这是关于这个的 documentation.但……使用时:
Awareness.FenceApi.queryFences

我可以看到它的deprecated,而是需要使用:

Awareness.getFenceClient

任何人都可以举个例子来说明如何使用getFenceClient获取fence状态?

解决方法

得到它了:
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);
                }
            });

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...