AiFlutter 文档AiFlutter 文档
入门指南
更新日志
官网
市场
社区
低代码平台
GitHub
入门指南
更新日志
官网
市场
社区
低代码平台
GitHub
  • 入门指南

    • AiFlutter 简介
      • 产品介绍
    • 快速开始
    • 工作空间概览

      • 工作台
      • 进入工作台
      • 工作台结构
      • 账户设置
      • 订单中心
      • 项目
      • 团队
      • 资源
    • 操作界面说明

      • 操作界面简介
      • 素材管理
      • 日志管理
      • 主题设置
      • App设置
      • 小部件面板
      • 自定义组件
      • 页面管理
      • 页面编辑窗口
      • 流程图
    • 组件介绍

      • 页面布局
      • 内容展示
      • 动画图表
      • 交互行为
      • 表单元素
      • 页面导航
      • 系统工具
    • 集成硬件
    • API管理
    • 数据库
    • 自定义管理
    • iOS软件包上传TestFlight并测试
    • 实践案例

      • 老板要求两天开发一个App,半天搞定!!!
      • 一个小时搞定蓝牙调试助手!!!
      • 一个小时搞定串口调试助手!!!

集成硬件

HID

‌HID通信(Human Interface Device Protocol)是一种用于人体接口设备的通信协议,主要用于键盘、鼠标、游戏手柄等设备与计算机或其他设备之间的数据传输和格式定义。‌ HID协议旨在提供一个标准化的接口,使得各种HID设备能够与计算机系统无缝集成,并提供即插即用的用户体验。‌

HID通信的应用场景

HID通信广泛应用于各种人体接口设备,如键盘、鼠标、游戏手柄等。这些设备通过HID协议与计算机或其他设备进行通信,实现即插即用的用户体验。在Android开发中,HID通信也用于模拟外部设备的操作,实现与外部设备的交互。

操作流程如下

  1. 从画布中选中按钮进入流程图后。
  2. 点击+添加动作,在右侧的动作列表页面选择硬件动作 -> USB-HID。
  3. 选择操作类型
    • 扫描,扫描已连接设备的HID设备,支持插拔检测。
    • 连接,需要提供供应商ID和产品ID。
    • 断开连接,即断开已存在的HID设备连接。
    • 发送数据,即发送数据到HID设备,以16进制数据格式发送,多组数据已 , 隔开,例如 aa,55。
    • 接收数据,接收HID设备发送的数据,通过添加关联变量动态渲染页面数据,默认接收的数据为 16进制字符串数组。

注意:

  • HID不支持IOS
  • 当操作类型为连接时,必须填入 厂商id 和 产品id

串口

串口按位(bit)发送和接收字节,在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。典型地,串口用于ASCII码字符的传输。通信使用3根线完成,分别是地线、发送、接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但不是必须的。串口通信最重要的参数是波特率、数据位、停止位。对于两个进行通信的端口,这些参数必须匹配。

波特率

这是一个衡量符号传输速率的参数。指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数,如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时的波特率为240Bd,比特率为10位*240个/秒=2400bps。

平台默认的波特率为115200

数据位

这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据往往不会是8位的,标准的值是6、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。

平台默认的数据位为8

停止位

用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。

平台默认的停止位为1

串口的使用方式和配置参数与HID相同。

操作流程如下

  1. 从画布中选中按钮进入流程图后。
  2. 点击+添加动作,在右侧的动作列表页面选择硬件动作 -> 串口。
  3. 选择操作类型
    • 扫描,扫描已连接设备的串口设备,支持插拔检测。
    • 连接,需要提供供应商ID和产品ID。
    • 断开连接,即断开已存在的串口设备连接。
    • 发送数据,即发送数据到串口设备,以16进制数据格式发送,多组数据已 , 隔开,例如 aa,55。
    • 接收数据,接收串口设备发送的数据,通过添加关联变量动态渲染页面数据,默认接收的数据为 16进制字符串数组。
    • 插入监听,监听串口设备插入事件,插入后需要设置哪些操作,此步骤支持代码块
    • 拔出监听,监听串口设备拔出事件,拔出后需要设置哪些操作,此步骤支持代码块

注意:

  • 串口不支持IOS

NFC

**NFC(Near Field Communication)是一种短距离的高频无线通信技术,允许电子设备在彼此靠近的情况下进行数据交换。**‌它由RFID(非接触式射频识别)及互连互通技术整合演变而来,通过在单一芯片上集成感应式读卡器、感应式卡片和点对点通信的功能,实现移动支付、电子票务、门禁、移动身份识别、防伪等多种应用。‌

NFC技术的工作频率为13.56MHz,传输速度有106 Kbit/秒、212 Kbit/秒或者424 Kbit/秒三种。它通过非接触式射频识别技术,在短距离内(通常在20厘米内)实现数据交换。

应用场景

  1. ‌移动支付‌:用户可以通过具有NFC功能的手机进行非接触式支付,例如在商场、餐厅等场所刷卡消费。
  2. ‌门禁控制‌:将手机模拟成门禁卡,用于小区、公司或酒店等场所的进出管理。
  3. ‌电子票务‌:通过NFC技术,手机可以存储和展示电子票务信息,方便出行和活动参与。
  4. ‌数据传输‌:两个具备NFC功能的设备可以通过点对点的方式进行数据传输,例如文件、图片、音乐等的互传。

操作流程如下

  1. 从画布中选中按钮进入流程图后。
  2. 点击+添加动作,在右侧的动作列表页面选择硬件动作 -> NFC。
  3. 选择操作类型
    • 校验NFC权限,检测当前的手机是否支持NFC功能。
    • 写入数据,支持四种类型的数据写入。
      • URL,输入任意一个能够访问的HTTP地址,例如 https://aiflutter.com/
      • 文本,输入任意字符串,例如 Hello World!。
      • 电话,输入手机电话,例如1111111111111
      • 应用,输入应用的包名, 例如 com.tencent.mm(微信的包名),
      • 名片,输入 联系人的姓名、电话、公司、地址、邮件、网站
      • WIFI,输入WIFI的名称、密码、安全类型
    • 读取数据,支持四种卡片类型的读取。
      • Ndef,NFC标签中基础的数据结构,下面的标签都是在此基础上演变而来。
      • NfcA,M1卡,适用于门禁、停车场等系统。
      • NfcB,IC卡,适用于移动支付、身份识别等。
      • NfcV,15693卡,适用于交通、电子票务等。
    • 关闭,释放NFC的资源。

传感器

随着智能手机的普及,功能也越来越丰富,手机中的传感器也越来越多。

现在市场上的手机普遍包含以下传感器

光线传感器

原理:光敏三极管,接受外界光线时,会产生强弱不等的电流,从而感知环境光亮度。

用途:通常用于调节屏幕自动背光的亮度,白天提高屏幕亮度,夜晚降低屏幕亮度,使得屏幕看得更清楚,并且不刺眼。也可用于拍照时自动白平衡。还可以配合下面的距离传感器检测手机是否在口袋里防止误触。

距离传感器:

原理:红外LED灯发射红外线,被近距离物体反射后,红外探测器通过接收到红外线的强度,测定距离,一般有效距离在10cm内。距离传感器同时拥有发射和接受装置,一般体积较大。

用途:检测手机是否贴在耳朵上正在打电话,以便自动熄灭屏幕达到省电的目的。也可用于皮套、口袋模式下自动实现解锁与锁屏动作。

重力传感器:

原理:利用压电效应实现,传感器内部一块重物和压电片整合在一起,通过正交两个方向产生的电压大小,来计算出水平方向。

用途:手机横竖屏智能切换、拍照照片朝向、重力感应类游戏(如滚钢珠)。

加速度传感器

原理:与重力传感器相同,也是压电效应,通过三个维度确定加速度方向,但功耗更小,但精度低。

用途:计步、手机摆放位置朝向角度。

磁场传感器:

原理:各向异性磁致电阻材料,感受到微弱的磁场变化时会导致自身电阻产生变化,所以手机要旋转或晃动几下才能准确指示方向。

用途:指南针、地图导航方向、金属探测器APP。

陀螺仪:

原理:角动量守恒,一个正在高速旋转的物体(陀螺),它的旋转轴没有受到外力影响时,旋转轴的指向是不会有任何改变的。陀螺仪就是以这个原理作为依据,用它来保持一定的方向。三轴陀螺仪可以替代三个单轴陀螺仪,可同时测定6个方向的位置、移动轨迹及加速度。

用途:体感、摇一摇(晃动手机实现一些功能)、平移/转动/移动手机可在游戏中控制视角、VR虚拟现实、在GPS没有信号时(如隧道中)根据物体运动状态实现惯性导航。

GPS

原理:地球特定轨道上运行着24颗GPS卫星,每一颗卫星都在时刻不停地向全世界广播自己的当前的位置坐标及时间戳信息。手机GPS模块通过天线接收到这些信息。GPS模块中的芯片根据高速运动的卫星瞬间位置作为已知的起算数据,根据卫星发射坐标的时间戳与接收时的时间差计算出卫星与手机的距离,采用空间距离后方交会的方法,确定待测点的位置坐标。

用途:地图、导航、测速、测距。

传感器模块仅支持加速度、陀螺仪、重力、磁力传感器数据的读取

操作流程如下

  1. 从画布中选中按钮进入流程图后。
  2. 点击+添加动作,在右侧的动作列表页面选择硬件动作 。
  3. 选择硬件类型
    • 加速度(不含重力)
    • 加速度(包含重力)
    • 陀螺仪
    • 磁力计
  4. 选择操作类型
    • 开始数据监听,默认输出变量event(包含x, y, z 三轴的数据) ,通过添加关联变量来动态渲染页面的数据。
    • 停止数据监听,销毁监听事件。

蓝牙

低功耗蓝牙(BLE,Bluetooth Low Energy)是一种专为低功耗应用设计的蓝牙技术,起源于蓝牙4.0规范‌。与传统蓝牙相比,BLE显著降低了能耗,适合功耗敏感的设备,广泛应用于健康监测设备、智能家居、物联网等领域‌。

BLE技术的主要特点包括:

  • ‌低功耗‌:显著降低了设备的能耗,适合长时间运行的便携式设备。
  • ‌快速连接‌:简化了配对过程,支持即连即用。
  • ‌适中传输距离‌:一般在10米内,最远可达100米‌1。

BLE通信的基本流程包括以下几个步骤:

  1. ‌广播与扫描‌:BLE设备通过广播自己的存在来被其他设备发现。广播帧包含设备名称、类、服务等信息。
  2. ‌连接建立‌:设备之间通过配对过程建立连接,协商连接参数如蓝牙通道、带宽、连接间隔等。
  3. ‌服务发现‌:连接建立后,客户端设备会进行服务发现,识别服务器设备提供的服务。
  4. ‌数据交换‌:通过GATT协议进行数据交换,包括读取特征、写入特征、启用通知等操作‌。

BLE技术的优势包括:

  • ‌快速建立连接‌:简化配对过程,支持即连即用。
  • ‌低功耗‌:适合长时间运行的便携式设备。
  • ‌适中传输距离‌:一般在10米内,最远可达100米‌。

操作流程如下

  1. 从画布中选中按钮进入流程图后。
  2. 点击+添加动作,在右侧的动作列表页面选择硬件动作-> 蓝牙 。
  3. 选择操作类型
    • 蓝牙扫描,支持单次扫描、断开重新扫描、停止扫描后重新扫描,通常在页面初始化时调用。
    • 蓝牙连接,可以通过指定的蓝牙名称、mac地址进行连接。
    • 发送数据,输入 服务UUID,写特征UUID,以16进制数据格式发送,多组数据已 , 隔开,例如 aa,55,如果服务UUID,写特征UUID不填,则向所有的写特征发送数据
    • 接收数据,蓝牙连接成功后,接收蓝牙发送过来的数据,通过添加关联变量动态渲染页面数据,默认接收的数据为 16进制字符串数组。
    • 接收广播数据,不需要进行连接,负责接收蓝牙广播的数据,通过添加关联变量动态渲染页面数据,默认接收的数据为 16进制字符串数组。
    • 断开连接,断开已连接的设备。
    • 停止扫描,停止蓝牙扫描。

image-20250116173417976

相机

相机的操作类型有 打开前置相机、打开后置相机、打开闪光灯、关闭闪光灯。

需要配合扫描二维码小部件使用

image-20250116173417976

通过相对定位布局添加按钮,并在流程图中配置相机操作

操作流程如下

  1. 从画布中选中按钮进入流程图后。
  2. 点击+添加动作,在右侧的动作列表页面选择硬件动作-> 相机 。
  3. 选择操作类型
    • 打开前置相机,打开前置摄像头。
    • 打开后置相机,打开后置摄像头。
    • 打开闪光灯
    • 关闭山关灯

image-20250116173417976

上次更新:
下一篇
API管理