MiHomePlusHomeKit 的 Android 操作代理
MiHomePlus
MiHomePlus 是一個 Android App。
以透過 Android Accessibility 的特性,監(jiān)視和控制「米家」App,並且和 MiPlusServer 通信。
從而達到代理米家 App 到 HomeKit 的解決方案。
APK 下載
https://github.com/qoli/MiHomePlus/releases
幫助文檔
https://github.com/qoli/MiHomePlus/blob/master/INTRODUCTION.md
演示視頻
http://staticshare.5mlstudio.com/img-5168-mov(2017-06-20T08:13:45+08:00).mov
支持設(shè)備
大部分的「米家」設(shè)備。
包含空調(diào)伴侶、第一代智能開關(guān)等。
操作原理
調(diào)用「無障礙」特性,監(jiān)視和控制米家 App,當(dāng)「TYPE_WINDOW_CONTENT_CHANGED」觸發(fā)時候,與 MiPlusServer 同步設(shè)備狀態(tài)。
與 MiPlusServer 透過 Socket.io 觸發(fā) MIHomePlus 進行狀態(tài)切換。
在 Homebridge 基於 Switcheroo 插件提供操作接口。
所以 MiPlusServer 本質(zhì)是 Web 接口
關(guān)聯(lián)項目
MiPlusServer
https://github.com/qoli/MiPlusServer
如何使用
https://github.com/qoli/MiHomePlus/blob/master/INTRODUCTION.md
請查看「INTRODUCTION.md」文檔。
使用條件
- 關(guān)閉手機的鎖屏程式,調(diào)整為開屏幕直接進入界面。
使用到的其他項目
homebridge-switcheroo
https://github.com/chriszelazo/homebridge-switcheroo
示例 config.json
host 必須經(jīng)過 urlencode 才可正常工作。
{
"accessory": "Switcheroo",
"type": "switch",
"name": "空調(diào)伴侶",
"host": "http://192.168.1.104:3002/device/%E7%A9%BA%E8%AA%BF%E4%BC%B4%E4%BE%B6",
"on": "/ON",
"off": "/OFF",
"on_body": "ON",
"off_body": "OFF"
}
已知 BUG
紅米 1 會因為 D/OpenGLRenderer: Flushing caches 退出。
重啟設(shè)備后解決了。
如果持續(xù)發(fā)生,請在進程管理器加鎖,以及關(guān)閉省電模式。
筆記
terminal 指令
pidcat com.example.qoli.myapplication -l I
