微信咨询
返回顶部

您目前所在位置 : 资讯  > 资讯详情

小米运动手环API数据

前言

纯逆向新手,接触逆向两个月左右。

手头有一个小米手环4NFC版本,内置小爱同学,能够语音对话,进而控制智能家居,做一些操作如设置闹钟等。因对其实现原理好奇,并且想拓展其功能,遂逆向。百度只有Miband3之前的研究,到了Miband4的新功能,我应该还是第一个。

 逆向前准备

首先,要想使用小米手环中的语音助手,手环必须和手机保持连接,并且小米运动APP要保持后台运行。很显然,小米手环并没有内置语音识别的功能,猜测其应该是将声音传感器的数据发送给手机,然后手机进行语音识别,自然语义处理之后再发送给手环。

而在安卓中,想要实现BLE(低功耗蓝牙)通讯,必须要调用

 复制代码 隐藏代码boolean android.bluetooth.BluetoothGatt.writeCharacteristic(BluetoothGattCharacteristic characteristic)

具体API可以参考Google的

        我们就从这里开始入手。

开始逆向

        我们使用Jadx打开小米运动APP,查看其源代码,发现大部分代码混淆得有点厉害,不过这不是问题。

        我们直接使用代码搜索功能搜索“writeCharacteristic”,发现了我们想要的结果。