android ibeacon sdk,如何通过Android上的SDK更改iBeacon参数(UUID,Major,Minor,TxPower)的值...

我目前正在Android Studio上开发一个Android应用程序来检测和使用iBeacons。我必须检测信标并获取其参数的部分已完成,但我面临的问题是使用Android系统上可用的API更改特定iBeacon的此参数的值。我已经看到Beacon.Builder()类中的setId1(UUID),setId2(Major),setId3(Minor)等不同的函数可用于修改这些值,但我知道如何使用这在特定的信标上起作用。如何通过Android上的SDK更改iBeacon参数(UUID,Major,Minor,TxPower)的值

这是我的灯塔创建我的类定义:

class IdBeacon {

private String UUID;

private String Major;

private String Minor;

private String Distance;

private String RSSI;

private String TxPower;

public IdBeacon (String UUID, String Major, String Minor, String Distance, String RSSI, String TxPower){

this.UUID = UUID;

this.Major = Major;

this.Minor = Minor;

this.Distance = Distance;

this.RSSI = RSSI;

this.TxPower = TxPower;

}

public String getUUID() { return UUID; }

public void setUUID(String UUID) { this.UUID = UUID; }

public String getMajor() { return Major; }

public void setMajor(String major) { Major = major; }

public String getMinor() { return Minor; }

public void setMinor(String minor) { Minor = minor; }

public String getDistance() { return Distance; }

public void setDistance(String distance) { Distance = distance }

public String getRSSI() { return RSSI; }

public void setRSSI(String RSSI) { this.RSSI = RSSI; }

public String getTxPower() { return TxPower; }

public void setTxPower(String txPower) { this.TxPower = txPower; }

}

这是代码来获取iBeacon显示的参数的不同值:

String distance = String.valueOf(beacons.iterator().next().getDistance());

String Uuid = String.valueOf(beacons.iterator().next().getId1());

String major = String.valueOf(beacons.iterator().next().getId2());

String minor = String.valueOf(beacons.iterator().next().getId3());

String Rssi = String.valueOf(beacons.iterator().next().getRssi());

String TxPower = String.valueOf(beacons.iterator().next().getTxPower());

arrayIdBeacon.clear();

arrayIdBeacon.add(new IdBeacon(Uuid,major,minor,distance,Rssi,TxPower));

这是我的ArrayAdapter的声明来处理显示我的iBeacon参数的视图:

public BeaconAdapter(Context context, ArrayList idBeacons){

super(context, 0,idBeacons);

}

@NonNull

@Override

public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {

IdBeacon beacon = getItem(position);

if (convertView == null){

convertView = LayoutInflater.from(getContext()).inflate(R.layout.mylist, parent, false);

}

TextView tvUuid = (TextView) convertView.findViewById(R.id.ValUUID);

TextView tvMajor = (TextView) convertView.findViewById(R.id.ValMajor);

TextView tvMinor = (TextView) convertView.findViewById(R.id.ValMinor);

TextView tvDist = (TextView) convertView.findViewById(R.id.ValDist);

TextView tvRSSI = (TextView) convertView.findViewById(R.id.ValRSSI);

TextView tvTxPower = (TextView) convertView.findViewById(R.id.tvTxPower);

if (beacon != null){

tvUuid.setText(beacon.getUUID());

tvMajor.setText(beacon.getMajor());

tvMinor.setText(beacon.getMinor());

tvDist.setText(beacon.getDistance());

tvRSSI.setText(beacon.getRSSI());

tvTxPower.setText(beacon.getTxPower());

}

return convertView;

}

2017-04-21

P. Laine

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值