016-Android获取onenet平台上的数据

Posted 沐雨2148356341

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了016-Android获取onenet平台上的数据相关的知识,希望对你有一定的参考价值。

package com.example.webview;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private String msg;//声明一个输出值
    private Button getmsg;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        getmsg = (Button) findViewById(R.id.getmsg);
        getmsg.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                new newThread().start();

//                方法1:直接创建子线程并启动
//                new Thread(){
//                    @Override
//                    public void run() {
//                        //第一步:实例化URL对象
//                        String address="https://api.heclouds.com/devices/584758432/datastreams/dust_concentration"; //查询最新数据流详情
////                        String address="https://api.heclouds.com/devices/584758432/datapoints?limit=10"; //查询历史数据
////                        String address="https://api.heclouds.com/devices/584758432/datastreams/dust_concentration"; //查询数据流详情
//
//                        try {
//                            URL url =new URL(address);   //实例化URL对象
//                            //实例化 HttpURLConnection对象
//                            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//                            //设置链接属性
//                            conn.setRequestMethod("GET");//设置请求方法
//                            conn.setRequestProperty("api-key","TeO0juJlw1uDTmDJRKD7cvzj=cM=");
//                            conn.setRequestProperty("Host","api.heclouds.com");
//                            conn.setReadTimeout(5000);//设置超时时间
//                            if(conn.getResponseCode()==200){ //获取状态码 200表示连接成功
//                                //获取输入流
//                                InputStream in= conn.getInputStream();
//                                //读取输入流
//                                byte[] b=new byte[1024*512]; //定义一个byte数组读取输入流
//                                ByteArrayOutputStream baos = new ByteArrayOutputStream(); //定义缓存流来保存输入流的数据
//                                int len=0;
//                                while((len=in.read(b))>-1){  //每次读的len>-1 说明是是有数据的
//                                    baos.write(b,0,len);  //三个参数  输入流byte数组   读取起始位置  读取终止位置
//                                }
//                                String msg=baos.toString();
//                                Log.e("TAG",msg);
//
//                            }
//                        } catch (java.io.IOException e) {
//                            e.printStackTrace();
//                        }
//                    }
//                }.start();


//                //方法2:先创建子线程,然后启动
////                private Thread newThread; //声明一个子线程
//            newThread = new Thread(new Runnable() {
//                @Override
//                public void run() {
//                    //第一步:实例化URL对象
//                    String address="https://api.heclouds.com/devices/584758432/datastreams/dust_concentration"; //查询最新数据流详情
////                        String address="https://api.heclouds.com/devices/584758432/datapoints?limit=10"; //查询历史数据
////                        String address="https://api.heclouds.com/devices/584758432/datastreams/dust_concentration"; //查询数据流详情
//
//                    try {
//                        URL url =new URL(address);   //实例化URL对象
//                        //实例化 HttpURLConnection对象
//                        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//                        //设置链接属性
//                        conn.setRequestMethod("GET");//设置请求方法
//                        conn.setRequestProperty("api-key","TeO0juJlw1uDTmDJRKD7cvzj=cM=");
//                        conn.setRequestProperty("Host","api.heclouds.com");
//                        conn.setReadTimeout(5000);//设置超时时间
//                        if(conn.getResponseCode()==200){ //获取状态码 200表示连接成功
//                            //获取输入流
//                            InputStream in= conn.getInputStream();
//                            //读取输入流
//                            byte[] b=new byte[1024*512]; //定义一个byte数组读取输入流
//                            ByteArrayOutputStream baos = new ByteArrayOutputStream(); //定义缓存流来保存输入流的数据
//                            int len=0;
//                            while((len=in.read(b))>-1){  //每次读的len>-1 说明是是有数据的
//                                baos.write(b,0,len);  //三个参数  输入流byte数组   读取起始位置  读取终止位置
//                            }
//                            String msg=baos.toString();
//                            Log.e("TAG",msg);
//
//                        }
//                    } catch (java.io.IOException e) {
//                        e.printStackTrace();
//                    }
//                }
//            });
//                newThread.start();

            }
        });
    }


//      方法3:创建外部线程类
//    public class  newThread extends Thread  {
//        public void run(){
//            //第一步:实例化URL对象
//            String address="https://api.heclouds.com/devices/584758432/datastreams/dust_concentration"; //查询最新数据流详情
////                        String address="https://api.heclouds.com/devices/584758432/datapoints?limit=10"; //查询历史数据
////                        String address="https://api.heclouds.com/devices/584758432/datastreams/dust_concentration"; //查询数据流详情
//
//            try {
//                URL url =new URL(address);   //实例化URL对象
//                //实例化 HttpURLConnection对象
//                HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//                //设置链接属性
//                conn.setRequestMethod("GET");//设置请求方法
//                conn.setRequestProperty("api-key","TeO0juJlw1uDTmDJRKD7cvzj=cM=");
//                conn.setRequestProperty("Host","api.heclouds.com");
//                conn.setReadTimeout(5000);//设置超时时间
//                if(conn.getResponseCode()==200){ //获取状态码 200表示连接成功
//                    //获取输入流
//                    InputStream in= conn.getInputStream();
//                    //读取输入流
//                    byte[] b=new byte[1024*512]; //定义一个byte数组读取输入流
//                    ByteArrayOutputStream baos = new ByteArrayOutputStream(); //定义缓存流来保存输入流的数据
//                    int len=0;
//                    while((len=in.read(b))>-1){  //每次读的len>-1 说明是是有数据的
//                        baos.write(b,0,len);  //三个参数  输入流byte数组   读取起始位置  读取终止位置
//                    }
//                    String msg=baos.toString();
//                    Log.e("TAG",msg);
//                }
//            } catch (java.io.IOException e) {
//                e.printStackTrace();
//            }
//        }
//    }

}

 

以上是关于016-Android获取onenet平台上的数据的主要内容,如果未能解决你的问题,请参考以下文章

OneNet一次上传多个数据,在可视化页面解析显示

OneNet一次上传多个数据,在可视化页面解析显示

玩转 ESP32 + Arduino (十三) 通过MQTTs协议上传数据至OneNet云平台

自制APP连接OneNET---实现数据监控和下发控制(HTTP)

基于OneNet平台设计的多节点温度采集系统-有人云4G模块+STM32

基于OneNet平台设计的多节点温度采集系统-有人云4G模块+STM32