基于 Flutter 开发的 Home Assistant 安卓工具,通过 MQTT 与 Home Assistant 通讯,提供设备屏幕控制、短信转发和应用启动功能。搭配传感器快速实现人来亮屏人走息屏功能,适合备用机安装使用。
- 🔌 MQTT 通讯: 使用 MQTT 协议与 Home Assistant 进行通讯
- 🔍 自动发现: 自动发送 MQTT Discovery 消息到 Home Assistant
- 📱 屏幕控制: 支持远程控制手机屏幕开关
- 🚀 应用启动: 支持通过 Home Assistant 启动手机上的其他应用
- 📩 短信转发: 实时转发最新短信到 Home Assistant
- ⚙️ 配置管理: 美观的设置页面,支持保存 MQTT 配置信息
-
打开应用后,点击右上角设置图标
-
填写 MQTT 配置信息:
- 服务器地址: MQTT 服务器的 IP 地址
- 端口: 默认 1883
- 用户名: MQTT 服务器用户名
- 密码: MQTT 服务器密码
- 设备 ID: 唯一标识符(可自动生成)
- 设备名称: 在 Home Assistant 中显示的名称
-
保存配置并返回主页面
-
授予设备管理权限以启用屏幕控制功能
-
授予短信读取权限以启用短信转发功能
应用会自动发送 MQTT Discovery 消息,Home Assistant 会自动发现设备并创建实体:
-
实体类型:
switch -
实体 ID:
switch.<device_id>_screen -
功能: 控制手机屏幕开关
-
实体类型:
text -
实体 ID:
text.<device_id>_launch_app -
功能: 输入应用包名启动应用(例如:com.android.chrome)
-
实体类型:
sensor -
实体 ID:
sensor.<device_id>_latest_sms -
功能: 显示最新短信内容
-
实体类型:
sensor -
实体 ID:
sensor.<device_id>_battery -
功能: 显示设备电池电量
应用需要以下权限:
INTERNET: 网络连接(MQTT 通讯)WAKE_LOCK: 唤醒屏幕DISABLE_KEYGUARD: 解除锁屏ACCESS_NETWORK_STATE: 检查网络状态READ_SMS: 读取短信内容(短信转发功能)DEVICE_ADMIN: 设备管理权限(关闭屏幕)QUERY_ALL_PACKAGES: 查询已安装应用(仅 Android 11+)
欢迎提交 Issue 和 Pull Request!