用户直接从后台拉到前台 然后杀死 app 会导致播放进度丢失 有什么好方法呢 不想定时任务保存记录
1
iOCZS 2023-11-09 10:53:39 +08:00
定时保存,实时保存,APP 退出回调保存,播放 widget deinit 保存
|
3
iOCZS 2023-11-09 11:01:05 +08:00
@leetomlee123 那你就想错了,最简单直接的才是最健壮的。机器就适合做这种高频率的工作。你想啊,你音频播放,肯定有进度在实时刷新吧,有时候是个进度条啥的,那你刷新的时候赶紧同步不就好了。有时候你只是封面图转一下,但是播放进度其实还是有回调或者你可以定时去获取一下。
|
6
sentinelK 2023-11-09 11:07:02 +08:00
|
8
AlanStar 2023-11-09 11:13:02 +08:00
Android 原生的 Activity 生命周期有 onPause()和 onResume(),flutter 可以通过 WidgetsBindingObserver 检测到前后台切换状态(后半段是查到的)。
关于播放进度,可以考虑这几个方案 1.用生命周期的方式来控制,比如 Activity 获得焦点和失去焦点时各就执行一次播放进度记录,这样就不会显得那么刻意。 2.提示用户关闭 APP 电量管理限制以使用类似 service 的机制监听用户的行为变化从而做记录。 后者可能会让人比较反感,不太建议 |
9
AoEiuV020JP 2023-11-09 11:34:49 +08:00
软件开源不?有些兴趣,
听书是本地用户自行导入的书还是有提供资源? |
10
daniel11 2023-11-09 11:59:46 +08:00
我最近也是有个想法,也想问题是自用呀还是会发布,如果发布的话书的资源如何处理的,书的版权怎么处理
|
11
xiguadong OP @AoEiuV020JP http://116.204.64.93:5244/d/v1/tsl.apk
|
14
jifengg 2023-11-09 13:19:43 +08:00
前段时间也做了一个听故事的 flutter 项目,用的是 audioplayers 包,它有 onPositionChanged 可以监听进度变化。你可以在里面加个判断,距离上一次保存多少秒了就再保存一次。
|
16
daotiangeng 2023-11-09 13:31:03 +08:00
@leetomlee123 下不了,提示病毒
|
17
xiguadong OP @daotiangeng 6
|
18
xiguadong OP @daotiangeng 6
|
19
kosmosr 2023-11-09 13:45:41 +08:00 via iPhone
不如问问 gpt ,我写 flutter 很多代码都是请教 gpt 写的
|
21
lin7946 2023-11-09 15:09:35 +08:00 4
看完下来就看到 OP 不想/不喜欢/不知道/6 .....
|
22
yyyyhere 2023-11-09 17:28:22 +08:00
重写 didChangeAppLifecycleState 方法
|
23
K2 2023-11-10 08:04:07 +08:00
最近在用这个作者的听书 app ,也有 android 版本。好处是可以直接导入 epub 或 txt ,然后用微软语音朗读,能实时保存进度,还支持音译后离线播放。
|
24
K2 2023-11-10 08:04:57 +08:00
|
25
ltq918 2023-11-10 10:05:20 +08:00 via Android
Android 中似乎有一个 onTaskRemoved()
|