温湿度项目--Android APP

13 篇文章 2 订阅
10 篇文章 1 订阅
添加网络权限
<uses-permission android:name="android.permission.INTERNET" />
导入 OkHttp3 依赖库
在 Module 下的 build.gradle 配置文件中的 dependencies 节点 , 进行如下配置 ;
implementation 'com.squareup.okhttp3:okhttp:3.12.0'
非https报错的的处理办法
CLEARTEXT communication to 121.4.99.98 not permitted by network security policy
在AndroidManifest.xml application  添加 android:usesCleartextTraffic="true"
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    tools:context=".MainActivity"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <Button
        android:text="获取数据"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:id="@+id/getData" />

    <TextView
        android:id="@+id/content"
        android:layout_width="match_parent"
        android:layout_height="500dp"
        android:background="#456789"/>

</LinearLayout>

package com.example.wsd;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import org.json.JSONArray;
import org.json.JSONObject;

import java.io.IOException;

import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

public class MainActivity extends AppCompatActivity {
    private Button btn;
    private TextView content;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn = findViewById(R.id.getData);
        content = findViewById(R.id.content);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //第一步获取okHttpClient对象
                OkHttpClient client = new OkHttpClient.Builder()
                        .build();
                //第二步构建Request对象
                Request request = new Request.Builder()
                        .url("http://121.4.99.98:5000?num=30")
                        .get()
                        .build();
                //第三步构建Call对象
                Call call = client.newCall(request);
                //第四步:异步get请求
                call.enqueue(new Callback() {
                    @Override
                    public void onFailure(Call call, IOException e) {
                        Log.i("onFailure", e.getMessage());
                    }
                    @Override
                    public void onResponse(Call call, Response response) throws IOException {
                        String result = response.body().string(); // [[7654,"21.80","94.00","2022-11-19 19:21:54"],[7653,"21.70","94.00","2022-11-19 19:21:44"]]
                        content.setText(result);
                    }
                });
            }
        });
    }
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 51单片机是一种常用的单片机型号,可以用来制作温湿度测量设备。我们可以利用51单片机的模拟输入功能,将温湿度传感器采集到的信号转化为数字信号,然后通过串口通信将这些数据传输给手机app。 在手机app方面,我们可以采用Android或iOS平台,使用相关的编程语言(如Java或Objective-C/Swift)来开发。首先,需要对串口通信协议进行定义,以保证数据的正确传输。然后,可以设计界面,使用户能够直观地查看温湿度数据,并可以进行相关设置,如设定温度和湿度的报警值等。 在实际应用中,可以将温湿度测量设备安装在需要监测的环境中,如室内、温室、实验室等。通过手机app可以随时随地查看这些环境的温湿度数据,及时采取相应的措施,保证环境的舒适性或实验的准确性。 总之,利用51单片机和手机app,可以实现便捷的温湿度监测和管理,为我们的日常生活和科研实验提供了很大的帮助。 ### 回答2: 51单片机是一款广泛应用于嵌入式系统的微控制器,并且在实现一些简单的数字电子电路上有非常方便的使用体验。而测温湿度作为我们日常生活中必不可少的元素,很多人都希望可以通过智能手机掌握周围的环境变化。 针对这种需求,在51单片机和智能手机之间构建了相应的接口,实现了测温湿度的功能。其中,单片机用来进行温湿度数据的采集和处理,通过传感器采集实时环境温湿度数值,数据经过单片机处理之后,发送到手机app上进行展示和保存。 这个系统的优点在于具有采集迅速、精度高、成本低等优势。同时,手机app方便用户实时观察和保存温湿度数据,可以更加方便地帮助用户掌握周围环境的变化,提高舒适度和生活质量。 总之,这个基于51单片机的测温湿度手机app系统具有很好的实用性和可编程性,是一种典型的嵌入式实时数据采集和处理方案。随着手机普遍化、嵌入式技术的发展,这种系统的应用场景将更加广泛。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值