AltBeacon设置蓝牙名称

时间:2016-01-03 22:22:20

标签: android bluetooth altbeacon

我正在整理一个用于演示/测试目的的应用程序,这将允许我的团队使用AltBeacon广告功能将他们的手机用作灯塔。我已成功使用以下代码在我的运行Android API 23的Nexus 6P上运行广告,但我无法检测到"我已分配蓝牙名称的信标。它始终出现" N / A"为了本地名称。

//Beacon stuff
private Beacon mBeacon;
private BeaconParser mBeaconParser;
private BeaconTransmitter mBeaconTransmitter;
private String estimoteBeaconLayout = "m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24";

这是我的方法中开始做广告的代码

//creating the beacon object based on the user input
    mBeacon = new Beacon.Builder()
            .setId1(inputUUID)
            .setId2(inputMinor)
            .setId3(inputMajor)
            .setManufacturer(0x004C)
            .setTxPower(-59)
            .setRssi(-80)
            .setBeaconTypeCode(02)
            .setBluetoothName("TestName")
            //.setDataFields(Arrays.asList(new Long[]{0l}))
            .build();

    //creating the beacon parser and setting it to the user specified format
    mBeaconParser = new BeaconParser().setBeaconLayout(estimoteBeaconLayout);

    //setting up the beacon transmitter
    mBeaconTransmitter = new BeaconTransmitter(getContext(), mBeaconParser);

    //starting advertising
    mBeaconTransmitter.startAdvertising(mBeacon, new AdvertiseCallback() {
        @Override
        public void onStartSuccess(AdvertiseSettings settingsInEffect) {
            updateDebugTextWindow("Advertising Started");
            super.onStartSuccess(settingsInEffect);
        }

        @Override
        public void onStartFailure(int errorCode) {
            updateDebugTextWindow("Advertising start failed");
            super.onStartFailure(errorCode);
        }
    });

这是我运行Nordic的nRF Master应用程序的Nexus 5的屏幕截图

Nexus 5 Screen Shot

有关如何让本地名称工作的任何提示将不胜感激

0 个答案:

没有答案