Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何获得Onyx ibeacons的电池电量_Android_Ibeacon_Ibeacon Android_Altbeacon - Fatal编程技术网

Android 如何获得Onyx ibeacons的电池电量

Android 如何获得Onyx ibeacons的电池电量,android,ibeacon,ibeacon-android,altbeacon,Android,Ibeacon,Ibeacon Android,Altbeacon,我用的是图书馆,我用的是ibeacons。我检查和张贴。但这对我不起作用 public void onBeaconServiceConnect() { beaconManager.setRangeNotifier(new RangeNotifier() { @Override public void didRangeBeaconsInRegion(final Collection<Beacon> beacons, Region region)

我用的是图书馆,我用的是ibeacons。我检查和张贴。但这对我不起作用

public void onBeaconServiceConnect() {
    beaconManager.setRangeNotifier(new RangeNotifier() {
        @Override
        public void didRangeBeaconsInRegion(final Collection<Beacon> beacons, Region region) {               
            if (beacons.size() > 0) {                  
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        // MyCustomFunction();
                    }
                 });
            }

            for (Beacon b : beacons) { 
                long batteryLevel = b.getDataFields().get(0);
            }
        }
    });
}
public void onbeacerviceconnect(){
setRangeNotifier(新的RangeNotifier(){
@凌驾
公共无效DidRangeBeaconsisnRegion(最终收集信标,Region){
如果(beacons.size()>0){
runOnUiThread(新的Runnable(){
@凌驾
公开募捐{
//TODO自动生成的方法存根
//MyCustomFunction();
}
});
}
(信标b:信标){
long batteryLevel=b.getDataFields().get(0);
}
}
});
}
“batterylevel”返回相同的值。
如何从信标获取电池电量?

没有标准方法获取iBeacon的电池电量。一些制造商(如Kontakt)在广播结束时将电池电量存储在一个额外的字节中,这对于您参考的帖子是正确的。然而,这并不适用于所有制造商

获取信息的另一种常见方式是使用专有的可连接蓝牙LE服务。目前尚不清楚您使用的信标是否具有此功能。即使他们这样做了,您也需要能够从制造商那里获得一个公共API,以了解如何做到这一点。如果制造商没有发布这篇文章,那么你就没有运气了,除非你能自己进行逆向工程


同样,每个制造商都是不同的,因此您必须为每种信标类型找到不同的解决方案

广告或扫描响应数据包中不存在电池电量。需要从外围接口暴露的gatt特性中读取电池电量。您是否使用OnyxBeacon管理应用程序读取电池?您需要一些定制应用程序的电池电量吗?#istirbu我尝试了OnyxBeacon IOS应用程序。它仅显示onyxbeacon的电池状态。但我还有一个ibeacon。应用程序未显示另一个ibeacon的电池状态。所以,我使用这个库。你是说你有一个不同制造商的iBeacon,还是另一个OnyxBeacon iBeacon没有显示电池电量?我是说我有一个不同制造商的iBeacon。谢谢你,大卫。我认为必须有一个标准。