然后安卓要通过各种模块、定时唤醒等来防止上面的情况出现,有没有懂的大佬从原理上来解释一下?是安卓这个系统从 linux 内核构建时就留下的祸根?
或者从另一个角度问,现在的安卓到底要怎样改造才能实现完美的墓碑?
1
pangzhen 2023-09-19 10:03:17 +08:00
iOS 也会。
|
2
mars2023 2023-09-19 10:22:04 +08:00 3
有没可能 Android 就是按照多任务系统设计,为什么要改造成墓碑机制呢?
|
3
codehz 2023-09-19 10:47:48 +08:00
其实安卓已开始就提供了恢复状态的机制
但没人用 |
4
AoEiuV020JP 2023-09-19 10:53:38 +08:00
开发思维?
ios 开发者会假定 app 后台会被冻结, android 开发者会假定 app 后台继续工作, |
5
binbin0915jjpp 2023-09-19 10:57:38 +08:00
16G 内存 不用搞这些...
|
6
TArysiyehua 2023-09-19 11:11:00 +08:00
墓碑不就是干这个的吗?
|
7
sankemao 2023-09-19 11:17:49 +08:00 1
如果开发者遵照开发规范,即便 app 后台被杀后,从新打开也能恢复之前的状态。
|
8
murmur 2023-09-19 11:36:31 +08:00 1
ios 的后台只是留了一张截图而已,然后看截图的时候在那重载
|
9
stinkytofu 2023-09-19 11:46:05 +08:00
开发水平问题, 可能是有些变量在生命周期结束后变为 null 值了, 但是 Activity 恢复后没有处理, 这也是历史原因, 安卓本来就是多任务系统, 开发者习惯 APP 整个生命周期都是存活的. 按照 7#说的, 如果完全按照开发规范, 是不会有这个问题的, onCreate 函数提供了恢复参数
|
10
Leonard 2023-09-19 12:41:25 +08:00 via iPhone
@binbin0915jjpp 不是内存问题,是耗电问题
|
11
YGBlvcAK OP @binbin0915jjpp 楼上说的对,如果没有墓碑毒瘤 app 就会一直在后台运行,增加耗电和卡顿
@murmur 这个重载不是你说的那个重载,是直接的重载了 @TArysiyehua 墓碑不完美,有很多问题 @AoEiuV020JP 所以要墓碑,并且强制,现在的问题就是墓碑问题太多 @mars2023 毒瘤 app 太多,ios 并不是没有毒瘤,ios 不给机会而已 |
12
TArysiyehua 2023-09-19 14:40:27 +08:00
墓碑机制肯定不完美的,如果有一个完美的方案早就被用上了。你猜为啥大部分人都不用,不就是他的问题多过于实际上得到的体验嘛。。。
|
13
zhouquanbest 2023-09-19 14:58:45 +08:00
Android 是另一种思维 可以理解为让应用睡眠
这样也没什么开发和适配成本,实际上也就是内存严重不足时会杀下后台,但严重不足时,iOS 也杀啊 现在旗舰点的 Android 手机,基本能保证 15-18 个左右后台驻留,日常使用绰绰有余 |
14
mars2023 2023-09-19 15:03:07 +08:00
@YGBlvcAK #11 所以我选择 iPhone ,就是为了避免跟国内的 app 斗智斗勇;
个人觉得哪怕 Android 原生设计得再好,国产 OS 也可以为了公司业务对实际做调整; 而且 国产 OS 哪怕防得了其他的 app ,还是可能存在各种厂商合作的白名单。 所以,一开始就放弃“安卓” 这个体系吧。 |
15
liuzhedash 2023-09-19 15:07:18 +08:00
我感觉苹果的思路是:移动端的多任务是由 APNs 消息驱动的,只有收到了消息,才有必要唤醒对应的进程。
当然一个直接的问题就是:后台听音乐算不算多任务? |
16
cherryas 2023-09-19 15:55:20 +08:00
因为安卓毒瘤太多所以用户会主动清掉后台 app ,
ios 清后台没什么意义 |
17
ikas 2023-09-19 20:39:40 +08:00
|
18
mmdsun 2023-09-19 22:11:46 +08:00 via iPhone
我什么我感觉 iOS 重载几率更高呢
|
19
hhhsuan 2023-09-21 08:09:02 +08:00 via Android
墓碑是啥
|