簡體   English   中英

AltBeacon未檢測到Micropchip rn4870信標,僅檢測到iBeacons

[英]AltBeacon not detect Micropchip rn4870 beacon, detect only iBeacons

我使用Android Beacon庫AltBeacon。 未檢測到Microchip rn4870 ,僅顯示iBeacon。 我使用這些BeaconParsers來檢測周圍的所有信標。 有人可以解釋我如何檢測Microchip rn4870

    beaconManager = BeaconManager.getInstanceForApplication(this);
    // To detect proprietary beacons, you must add a line like below corresponding to your beacon
    // type.  Do a web search for "setBeaconLayout" to get the proper expression.

    ArrayList<BeaconParser> parsers = new ArrayList<>();

    parsers.add(new BeaconParser().setBeaconLayout("m:2-3=beac,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25"));
    parsers.add(new BeaconParser().setBeaconLayout("x,s:0-1=feaa,m:2-2=20,d:3-3,d:4-5,d:6-7,d:8-11,d:12-15"));
    parsers.add(new BeaconParser().setBeaconLayout("s:0-1=feaa,m:2-2=00,p:3-3:-41,i:4-13,i:14-19"));
    parsers.add(new BeaconParser().setBeaconLayout("s:0-1=feaa,m:2-2=10,p:3-3:-41,i:4-20v"));
    parsers.add(new BeaconParser().setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"));
    parsers.add(new BeaconParser().setBeaconLayout(BeaconParser.EDDYSTONE_UID_LAYOUT));
    parsers.add(new BeaconParser().setBeaconLayout(BeaconParser.EDDYSTONE_TLM_LAYOUT));
    parsers.add(new BeaconParser().setBeaconLayout(BeaconParser.EDDYSTONE_URL_LAYOUT));
    parsers.add(new BeaconParser().setBeaconLayout(BeaconParser.URI_BEACON_LAYOUT));
    parsers.add(new BeaconParser().setBeaconLayout(BeaconParser.ALTBEACON_LAYOUT));

    beaconManager.getBeaconParsers().addAll(parsers);
    beaconManager.bind(this);

了解Microchip rn4870是Bluetooth LE模塊,不一定是信標發送器。 您可以使用此硬件構建信標發送器,但是需要在其上加載固件以發送特定的信標格式。 一旦這樣做,它可能會傳輸iBeacon,AltBeacon或各種Eddystone數據包。

底線:問題與問題中顯示的代碼無關,問題出在發送方。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM