V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lujiangwen
V2EX  ›  iOS

为什么应用后台时间这么长,不是说好了墓碑机制的吗?

  •  
  •   lujiangwen · 2019-06-03 09:22:03 +08:00 · 6899 次点击
    这是一个创建于 2031 天前的主题,其中的信息可能已经有所发展或是发生改变。
    自己的手机上,微信的后台运行时间基本上和前台时间一样长,然后看了一眼我妈的手机,程序在后台运行的情况更夸张。现在 ios 不管后台了吗?
    https://imgur.com/a/JfMrb0R
    23 条回复    2019-06-05 21:25:40 +08:00
    laoyur
        1
    laoyur  
       2019-06-03 09:45:56 +08:00
    墓碑……这个词是 wp 的
    RobinCheng
        2
    RobinCheng  
       2019-06-03 09:50:23 +08:00 via iPhone
    关掉后台刷新?
    lujiangwen
        3
    lujiangwen  
    OP
       2019-06-03 09:56:47 +08:00
    @RobinCheng 已经关掉啦
    lujiangwen
        4
    lujiangwen  
    OP
       2019-06-03 09:57:27 +08:00
    @laoyur 我的意思是,后台程序应该会被暂停啊,不应该有这么长时间的后台运行……
    wangxiaoaer
        5
    wangxiaoaer  
       2019-06-03 10:03:30 +08:00
    程序切换到后台被暂停时也是在后台运行的。暂停是相对程序本身,运行是相对于整个手机系统。 你把暂停理解成挂起就好了。
    RobinCheng
        6
    RobinCheng  
       2019-06-03 10:07:56 +08:00 via iPhone
    不耗电不卡就好了,不要太在意
    icestraw
        7
    icestraw  
       2019-06-03 10:42:27 +08:00
    每有一条推送通知,主 App 都会允许唤醒一定时间,大概几秒钟。
    kera0a
        8
    kera0a  
       2019-06-03 11:11:06 +08:00 via iPhone
    程序切换到后台时,App 有一次 10 分钟的后台执行时间
    比如用 1 分钟微信,退出后微信还是可以继续执行 10 分钟后台的

    想完全关闭后台 上滑退出 APP 就行了

    推送唤醒的那个算个小扩展,主 APP 不会被唤醒执行代码
    Sapp
        9
    Sapp  
       2019-06-03 11:17:53 +08:00
    @lujiangwen 如果你每十分钟打开一次微信,那么其实他就一直是存活的...
    passerbytiny
        10
    passerbytiny  
       2019-06-03 11:31:17 +08:00
    IOS 的后台是个秘。我那个电动自行车 GPS 的辅助 APP,关闭后台并上划退出,28 个小时候再看最近 24 小时电量,有 30 分钟后台。立马卸载了。
    jiaudoug
        11
    jiaudoug  
       2019-06-03 12:16:01 +08:00 via iPhone
    手机装了小米运动,也关了后台刷新,但是这个 app 就一直在后台,没关系的。也不太掉电。
    ooops
        12
    ooops  
       2019-06-03 13:09:13 +08:00
    @kera0a 10 分钟有文档或者实验数据么?唤醒除了 notification extension,还有 remote update notification,是可以后台唤醒 /唤起主 app 的。
    JasonQs
        13
    JasonQs  
       2019-06-03 13:22:08 +08:00 via Android
    问就换 iPhone
    kera0a
        14
    kera0a  
       2019-06-03 13:38:31 +08:00
    @ooops
    来自我的印象,很少有用到 10 分钟那么久的,后台任务时间从没用满过
    我刚打印了一下 backgroundTimeRemaining 确认了一下 ,这个时间应该是 3 分钟 ,需要更正一下

    我说的那个推送扩展 ,是补充 上滑完全关闭后台 的额外情况。
    因为在上滑关闭 APP 后,收到推送时依然可以执行代码,但是并不会唤醒主 APP,可以忽略。
    remote notification 这个时候是不会唤醒执行代码的,可以不考虑
    kera0a
        15
    kera0a  
       2019-06-03 13:48:57 +08:00
    @ooops
    又确认了一下,3 分钟也不能算一个准确的答案,根据情况不同是动态的
    https://stackoverflow.com/questions/28275415/how-long-does-apple-permit-a-background-task-to-run
    matou
        16
    matou  
       2019-06-03 15:28:27 +08:00 via iPhone
    确实很迷,有次爱奇艺投屏挂后台后一晚上把我电用完了。现在每次投屏完都上滑关掉软件
    gesse
        17
    gesse  
       2019-06-03 18:51:54 +08:00
    orangy
        18
    orangy  
       2019-06-03 19:42:24 +08:00 via iPhone
    把后台刷新关闭了,有些 app 早上开的,晚上打开还是早上的界面,还能继续操作…
    lujiangwen
        19
    lujiangwen  
    OP
       2019-06-03 22:01:23 +08:00 via Android
    @wangxiaoaer 那是不是可以理解为:当一个程序后台运行时间很长的时候,它其实已经被挂起了,只不过一直保留在内存里呢?
    lujiangwen
        20
    lujiangwen  
    OP
       2019-06-03 22:03:43 +08:00 via Android
    @kera0a 理解了,怪不得我自己手机上微信的前后台时间基本上是 1:1 的。只要打开看信息的次数多,就会造成这样的情况。
    lujiangwen
        21
    lujiangwen  
    OP
       2019-06-03 22:05:17 +08:00 via Android
    @matou 我也遇到过一整晚持续后台耗点的,似乎音频 /视频应用容易出现这个问题。
    fvckDaybyte2
        22
    fvckDaybyte2  
       2019-06-05 10:01:51 +08:00   ❤️ 1
    没后台,你让音乐播放软件怎么办……现在 iOS 后台松得很,而且完全没法手动关闭……后台刷新这种东西只影响推送唤醒
    lujiangwen
        23
    lujiangwen  
    OP
       2019-06-05 21:25:40 +08:00 via iPhone
    @fvckDaybyte2 对啊,我就觉得…很多 app 打开过一次之后,就能在后台乱搞很久。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4034 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 00:58 · PVG 08:58 · LAX 16:58 · JFK 19:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.