内网环境下有什么安卓手机发通知的机制吗

2023-11-22 17:00:37 +08:00
 msmmbl
有一个项目,用在纯内网环境的安卓手机 App 的,有什么办法能让手机 App 能在息屏后仍能收到消息并发出通知不。

自建了一个服务,手机 App 用持久化通知保活,和服务器保持长链接,完了息屏后就断开了。

在外网有很多推送服务,咱在内网都用不上,有啥办法不
8936 次点击
所在节点    Android
16 条回复
Masoud2023
2023-11-22 17:03:03 +08:00
那解决息屏断开的问题不就行了?想办法做保活?
euph
2023-11-22 17:08:39 +08:00
gotify 可以部署到内网吧,应该可以,没试过
Donaldo
2023-11-22 17:13:11 +08:00
你说的持久化通知是不是“前台服务”?有没有尝试过用 WAKELOCK
ho121
2023-11-22 17:14:20 +08:00
电池优化关掉
caomingjun
2023-11-22 17:14:45 +08:00
自建 ntfy
qluuu
2023-11-22 17:19:44 +08:00
1 、启动前台服务(类似音乐播放器)
2 、想办法保活(白名单,刷机进入系统级应用、或者各种黑科技)
msmmbl
2023-11-22 17:28:53 +08:00
@Donaldo #3 是”前台服务“,在亮屏期间及时后台,可以一直保持连接不断。WAKELOCK 是不是就是让手机不休眠,这样会不会耗电很快
msmmbl
2023-11-22 17:30:34 +08:00
@qluuu #6 前台服务咱用了。您说的各种黑科技是不是在最新的手机上可能性越来越小了。
Kinnice
2023-11-22 17:32:19 +08:00
安卓手机可控的话,root 后把该应用放到系统应用可保活。
gam2046
2023-11-22 17:34:53 +08:00
msmmbl
2023-11-22 17:38:03 +08:00
@Kinnice 不大可控。太久没搞安卓开发了。保活我觉得问题不大,测试下来只要启动前台服务就行。就是息屏之后应用会断开连接,亮屏后也是会再次连上的。是不是得搞一个定时唤醒设备去收下消息之类的……
Donaldo
2023-11-22 17:42:57 +08:00
@msmmbl #8 参考一下 https://developer.android.com/training/scheduling/wakelock?hl=zh-cn#cpu
确实是你说的那个意思,但如果只是保持长链接的话,电池优化关掉应该就 ok 了吧?也不行么
msmmbl
2023-11-22 17:47:48 +08:00
@Donaldo 谢谢,“电池优化”,还没有测试。目前只试了通过前台消息,能够亮屏状态下,都不断开链接,息屏后等待 4 、5 秒后就断开,然后亮屏后恢复。“电池优化”后面我试了回复哈。
shily
2023-11-22 18:19:40 +08:00
用 WorkManager 吧,定期唤醒,查询一下服务器是否有新消息;优点是省电,缺点是没有那么的及时;
msmmbl
2023-11-22 18:32:13 +08:00
@shily 嗯,谢谢。我想也是得定期唤醒检查,不然感觉一直不让手机睡着太不厚道了。
listenerri
2023-11-22 23:32:23 +08:00
要不先确认下是不是息屏后网络连接( wifi ?)断开了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/994236

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX