设备管理 IoTDM(联通用户专用)-Agent Lite SDK使用指南(Android)(联通用户专用):非直连设备状态更新
非直连设备状态更新
非直连设备添加上时,一般情况下是“离线”状态。所以在非直连设备添加成功后,或者在非直连设备上报数据前,要调用HubService.updateDeviceStatus(int cookie, String deviceId, String status, String statusDetail)进行设备状态更新。
1 2 3 4 5 6 7 8 910111213 |
private void updateDeviceStatus(String status, String statusDetail) { LogUtil.i(this, TAG, "updateDeviceStatus!"); int cookie; Random random = new Random(); cookie = random.nextInt(65535); SharedPreferences preferences = getSharedPreferences("AgentLiteDemo", MODE_PRIVATE); String deviceId = preferences.getString("SENSORID", null); if (deviceId != null) { HubService.updateDeviceStatus(cookie, deviceId, status, statusDetail); }} |
AgentLiteDemo中只添加了一个非直连设备,所以updateDeviceStatus()方法中使用的“deviceId”是直接从SharedPreferences中读取的。
注册广播接收器对非直连设备状态更新结果进行相应处理。
1
|
LocalBroadcastManager.getInstance(this).registerReceiver(devStatusUpdateReceiver, new IntentFilter(HubService.TOPIC_DEVSTATUS_RSP)); |