android连接onenet之获取onenet数据流和更新onnet数据流

一、在onenet创建产品
onenet的地址
1、创建http产品
选择http——>点击网址右上角的增加产品
2、创建产品成功后立即增加设备
3、设备有了之后增加数据流
4、然后在增加的数据流随便模拟数据
还不知怎么操作的可以看下别人方法
二、在android中查询onenet的数据流
1、具体方法:别人的
2、该方法有个问题:在运行下面语句时会出现网络请求失败CLEARTEXT communication to “ “ not permitted by network security policy

Response response = client.newCall(request).execute();

解决方法网址:别人的
3、该方面的解析json是用gson

  JsonRootBean app = new Gson().fromJson(jsonData, JsonRootBean.class);

jsonData的数据是

{"errno":0,"data":{"count":1,"datastreams":[{"datapoints":[{"at":"2020-08-15 10:00:06.587","value":"12"}],"id":"light"}]},"error":"succ"}

你只要一层一层的创建好类,和类中的变量与jsonData的数据名一样就可以了,gson会自动解析掉
三、更新onenet数据流的数据
弄时先看http协议,必看
data利用简便写法

public void Pos(){
        new Thread(new Runnable() {
            @Override
            public void run() {
                try{
                    OkHttpClient client = new OkHttpClient();
//                    数据格式从官方文档看,type用5情况
                    String data=new String(",;light,12");
                   //发送type写法
                    RequestBody requestBody = RequestBody.create( data,MediaType.get("application/json"));
                    Request request = new Request.Builder()
                            .url("http://api.heclouds.com/devices/" + DeviceID + "/datapoints?type=5")
                            .post(requestBody)
                            .header("api-key", ApiKey)
                            .build();
                    Response response = client.newCall(request).execute();
                    String responseData = response.body().string();
                    //若输出error:0则更新成功
                    Log.w("www",responseData);
                }catch (Exception e){
                    Log.d("www",e.getMessage());
                    Log.d("www",e.getLocalizedMessage());
                }
            }
        }).start();
}

data一般写法

  String data = new String("{\"datastreams\":[{\"datapoints\":[{\"value\":\"20\"}],\"id\":\"light\"}]}");
  • 4
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值