pushdeer/doc/Android版self-hosted的设计和实现.md

31 lines
1.1 KiB
Markdown
Raw Normal View History

2022-03-30 18:19:46 +08:00
# 自架版当前状态
> 暂停开发,等待新开发者接手
由于之前负责Android版开发的同学忙于其他事情已退出开发目前Android版需要新的同学参与欢迎感兴趣的同学申请 easychen[A.T]gmail.com
2022-02-06 10:46:39 +08:00
# 问题
2022-03-30 18:19:46 +08:00
小米推送不再对个人开放自架系统的推送权限申请很麻烦而公开secret会对官方应用带来安全风险。
2022-02-06 10:46:39 +08:00
# 解决思路
2022-03-30 18:19:46 +08:00
采用websocket/MQTT来实现自架版的推送。
2022-02-06 10:46:39 +08:00
优点:
- 不受推送服务商限制,可以按自己需求随意推送
缺点:
- 无法实现后台推送应用必须常驻后台。但考虑到MiPush在非小米系手机上也有同样的问题也不是不能接受。
# 实现方案
2022-03-30 18:19:46 +08:00
优先采用MQTT协议因为PushDeer自架版Docker镜像本来就已经支持了MQTT Server 可参考[此文档]配置 (https://github.com/easychen/pushdeer/tree/main/iot#%E5%BC%80%E5%90%AFmqtt%E6%9C%8D%E5%8A%A1) ),因此只需要在客户端实现即可。
2022-02-06 10:46:39 +08:00
2022-03-30 18:19:46 +08:00
以下是UI原型
2022-02-06 10:46:39 +08:00
2022-03-30 18:19:46 +08:00
![](image/2022-03-30-18-14-05.png)
2022-02-06 10:46:39 +08:00
2022-03-30 18:19:46 +08:00
Android实现需要将MQTT启动为服务并常驻后台可在顶栏显示一个常驻图标点击后进入应用。