低代码平台开发胎压监测APP

项目介绍

       该项目是一个利用Flutter框架和蓝牙技术实现轮胎压力实时监测的应用。

主要功能如下:

  1. 用于接收蓝牙模块传输的胎压数据,并实时显示胎压值。
  2. APP对接收到的胎压数据进行处理,如单位转换、数据滤波等,然后将处理后的胎压值显示在界面上。

总之,该项目可以帮助用户实时监测轮胎压力,并提供丰富的功能以满足不同需求。该项目可以应用于汽车、自行车、摩托车等轮胎压力监测场景。

平台支持
  • Android

  • iOS

AiFlutter市场链接:胎压监测App

蓝牙调试助手APP源码链接:源码下载

平台实现步骤

一、注册登录

打开 低代码平台登录网页 ,使用微信快捷登录或者扫描二维码登录。

二、创建项目

  1. 点击【新增项目】>【手动添加】,在平台内部创建项目

  2. 在跳出的弹窗中输入项目名称、项目描述,建议结合项目功能描述命名,便于检索

  3. 输入完成后点击确定

三、创建页面

(1)点击已经创建好的项目进入到操作界面,默认会存在一个HomePage页面,操作界面相关详情可查看教程 操作界面

(2)创建三个页面 AddBleDeviceSetBleNameDeviceNetWork

  1. 点击【添加页面】> 【创建页面】

  2. 在跳出的弹窗中输入 页面名称、页面描述

  3. 最后点击确定即可

(4)删除HomePage页面,在【​页面管理】中右击要删除的页面,并点击【删除】

(5)设置AddBleDevice为主页面,在【​页面管理】中单击要删除的页面,并在右侧的属性编辑器中设置页面路由为/

四、页面设计

AddBleDevice页面设计
效果图

实现流程

1. 在【​页面管理】中单击AddBleDevice页面,在右侧的属性编辑器中配置页面描述和功能详情,内容如下

名称 内容
页面描述 整个页面的布局可以是垂直分区的,上半部分是设备扫描区,下半部分是设备列表区。
功能详情

1. 在页面初始化时,会依次执行以下操作

(1)监听蓝牙扫描状态,接收到状态变化后重新构建页面

(2)蓝牙扫描结果监听,接收到扫描结果后进行存储并重新构建页面

(3)开始蓝牙扫描,扫描时长8秒

2. 连接设备,在设备列表中选择设备进行连接,连接成功后跳转到数据收发页面

3. 重新扫描,蓝牙扫描结束后,点击【重新扫描】开始扫描,此时会断开已连接的蓝牙设备

2. 在【​页面管理】中单击AddBleDevice页面,在右侧的属性编辑器中添加页面变量

需要定义的变量如下

变量名称 变量类型 是否为数组 默认值 变量描述
devices Map 设备原始数据列表,用来去重
scaning Bool false 蓝牙扫描状态 true 正在扫描 false 未扫描
deviceList Map 页面显示的设备列表

操作成功如下

3. 添加页面初始化动作,在右侧的属性编辑器中点击【动作】> 【打开】

在操作流程编辑器中,页面初始化 事件下点击号添加事件,再点击号添加动作,信息如下

  • 动作类型 --【自定义代码块】,添加customCode1自定义代码块并选择

customCode1内容如下

void function() {
    // 控制雷达扫描的动画  
    waterRippleController = AnimationController(
      vsync: this,
      duration: const Duration(seconds: 2),
    );
    radarViewController = AnimationController(
      vsync: this,
      duration: const Duration(seconds: 5),
    );
    // 蓝牙扫描结果处理  
    ble.onScanResults(callbackLast: (event) {
      String name = event.advertisementData.advName;
      // 设备名称过滤  
      String DEVICE_NAME = StorageUtil().read('DEVICE_NAME') ?? '';
      if ((DEVICE_NAME.isNotEmpty &&
              (name == '' || !name.contains(DEVICE_NAME))) ||
          devices.contains(event)) {
        return;
      }
      // 去重操作,防止重复设备添加  
      devices.add(event);
      if (mounted) {
        setState(() {
          // 添加至设备列表  
          deviceList.add({
            "name": event.device.platformName,
            "rssi": event.rssi,
            "mac": "mac",
            "raw": event
          });
        });
      }
    });
    // 扫描状态处理  
    ble.isScaning((event) {
      if (mounted) {
        setState(() {
          scaning = event;
        });
        if (event) {
          waterRippleController?.repeat();
          radarViewController?.repeat();
        } else {
          waterRippleController?.stop();
          radarViewController?.stop();
        }
      }
    });
    // 开始扫描  
    ble.status(timeout: const Duration(seconds: 8));
  }

操作成功如下

4. 开启顶部导航栏,点击页面编辑窗口右上角的【​顶部导航栏】并开启,配置顶部导航栏背景色为 #FF006FFF

(1)从【​小部件面板】> 【常用元素】中选择【文本小部件】拖入到顶部导航栏中间位置中,然后在右侧的属性编辑器中配置属性,属性信息如下:

属性名称 属性内容
文本内容 蓝牙连接
文本颜色 #FFFFFFFF
文本大小 18

(2)从【​小部件面板】> 【常用元素】中选择【按钮小部件】拖入到顶部导航栏右侧位置中,然后在右侧的属性编辑器中配置属性,属性信息如下:

属性名称 属性内容
40
40
背景颜色 #00C8C8C8
阴影大小 0

(3)按钮打开动作流程编辑器,单击 事件下点击号添加事件,再点击号添加动作,信息如下

  • 动作类型 --【导航】,设置导航到SetBleName页面

(4)从【​小部件面板】> 【基本元素】中选择【图标小部件】拖入到【按钮小部件】中,然后在右侧的属性编辑器中配置属性,属性信息如下:

属性名称 属性内容
图标 setting
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值