我想使用android信标库作为ibeacon传输信标。 我使用他们网站上的示例代码:
private void startIBeaconTransmit() {
Toast.makeText(context, "beacon transmission started", Toast.LENGTH_SHORT).show();
Beacon beacon = new Beacon.Builder()
.setId1("44918498-F5B3-4A21-AC3D-7CD9B4EA8BEB")
.setId2("1")
.setId3("2")
.setManufacturer(0x0000)
.setTxPower(-59)
.setDataFields(Arrays.asList(new Long[] {0l}))
.build();
BeaconParser beaconParser = new BeaconParser()
.setBeaconLayout("m:2-3=beac,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25");
//.setBeaconLayout("m:0-3=4c000215,i:4-19,i:20-21,i:22-23,p:24-24");
beaconTransmitter = new BeaconTransmitter(getApplicationContext(), beaconParser);
beaconTransmitter.startAdvertising(beacon, new AdvertiseCallback() {
@Override
public void onStartSuccess(AdvertiseSettings settingsInEffect) {
Log.i("TAG", "onStartSuccess: ");
}
@Override
public void onStartFailure(int errorCode) {
Log.i("TAG", "onStartFailure: ");
}
});
}
我使用了不同的制造商代码,它没有帮助 我使用从Playstore下载的应用程序扫描另一部手机,我将我的灯塔视为altbeacon,我如何将其更改为ibeacon? 感谢
答案 0 :(得分:1)
你非常接近!
使用问题中显示的第二个信标布局(已注释掉的那个)除了将其更改为以"m:2-3=0215
开头
然后更改制造商代码以使用setManufacturer(0x004c)