起因:楼下门电子锁,通过小程序开锁。每次都要在门口傻站着打开微信找到小程序(等待小程序的加载)不太喜欢小程序。。。就就很不爽。

需求:开门 要方便 快。

解决:找到开门请求,app桌面小组件重写请求。

抓包

代理网络实现抓包

可以通过连接wifi设置代理为电脑ip然后通过抓包工具就可以了。

当然也可以在手机上安装抓包工具。

**注意:**小程序肯定是https了,要抓就要把证书安装到系统信任凭证中,安装用户凭证好像没用。就是需要root了。

借助手机模拟器(肯定不能拿自己的手机开刀),我用的雷电模拟器。

分享给需要的朋友 去广告绿色版

https://cloud.189.cn/t/YBjYnymyQRj2

模拟器推荐使用平板,模拟手机开root微信好像登陆不上。

抓包用的是httpCanary,找到app中的httpCanary根证书导出,类型选择systemTrusted。

把证书移动到/system/etc/security/cacerts目录下,可以用adb或MT管理器。

在httpCanary添加微信为目标应用,打开小程序请求就可以看到数据。

这是我抓到的开门请求,竟然用的是webSocket。

拿到开门参数就好办了,开始搞事情。

app桌面小组件

对android开发不是太熟,java开发做个小工具还是可以的。

主要就是按钮广播的注册监听在加上webSocket的对话

这里就不贴代码了太乱,代码已上传github

https://github.com/Dumplings0/widget

android_1

Q.E.D.