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

IOS 下清掉所有后台 QQ 邮箱还会默默运行?

  •  
  •   jaleo · 2019-04-23 12:08:49 +08:00 · 1321 次点击
    这是一个创建于 2041 天前的主题,其中的信息可能已经有所发展或是发生改变。


    睡前清掉了所有 app wifi 开着 surge 开着
    早上起来发现 QQ 邮箱悄悄会联网收邮件?
    怪不得每天早上打开 QQ 邮件已经在那里了
    12 条回复    2019-04-24 10:40:41 +08:00
    rzbb
        1
    rzbb  
       2019-04-23 12:21:46 +08:00 via iPhone
    后台刷新
    jaleo
        2
    jaleo  
    OP
       2019-04-23 12:43:04 +08:00
    @rzbb 刷新也关闭了
    finab
        3
    finab  
       2019-04-23 12:46:58 +08:00
    被上滑退出的 APP,大部分后台都会失效。
    不过发静默推送可以让 APP 有一点点时间执行代码, 收邮件够了
    jaleo
        4
    jaleo  
    OP
       2019-04-23 12:56:24 +08:00 via iPhone
    @finab 明白了
    ftu
        5
    ftu  
       2019-04-23 13:04:04 +08:00 via iPhone
    把通知关闭
    MrStark
        6
    MrStark  
       2019-04-23 13:23:34 +08:00
    @finab 我所知道的是使用 `Background fetch` mode 之后系统会统一调度后台刷新(前提是开启了 `后台刷新`),这时候程序有 30 秒的执行更新时间,另一种就是 `Remote Notifications`,推送一条带有 `content-available` 字段的消息就可以让程序无论是在后台还是前台都可以刷新数据(如果是在后台的话同样也是 30 秒的更新时间),但如果 app 被 kill 了的话,上面说的两种方式都无效,除非重新启动 app。所以我有点好奇你这里所说的 "上滑退出的 app 可以发静默推送可以让 app 有一点点时间执行代码",请问有相关文档么?
    finab
        7
    finab  
       2019-04-23 14:05:02 +08:00
    @MrStark
    NotificationServiceExtension
    https://developer.apple.com/documentation/usernotifications/unnotificationserviceextension
    就算程序上滑退出,收到推送时也会先执行这里的代码,也可以对推送做任何修改
    MrStark
        8
    MrStark  
       2019-04-23 14:17:11 +08:00
    @finab 原来是 UNNotificationServiceExtension,iOS10 新增的一些 API 没研究过,学习了。
    liaoyaoheng
        9
    liaoyaoheng  
       2019-04-23 15:14:47 +08:00 via iPhone
    @finab 关闭后台应用刷新都只要有推送都可以调用 NotificationServiceExtension ?请教
    finab
        10
    finab  
       2019-04-23 15:27:53 +08:00
    @liaoyaoheng
    是的, 但是并不会启动主 APP,就是一个小扩展吧
    liaoyaoheng
        11
    liaoyaoheng  
       2019-04-23 19:10:49 +08:00 via iPhone
    @finab 感觉这个只是处理推送消息的解密或显示方式,并不会保活后台?

    再请教下,这样的处理推送的时间是否会计算到 app 后台时间?如微信,关闭后台刷新打开推送,但是后台依旧显示很多的后台时间
    finab
        12
    finab  
       2019-04-24 10:40:41 +08:00   ❤️ 1
    @liaoyaoheng
    用途很多,推送图片视频时在这下载图片视频、QQ 在这将远程推送改为本地推送用于管理所有推送的显示或状态

    每一个推送都有一小段时间(我没测试过,应该是最多 30 秒)运行代码,理论上说你执行啥代码都行。
    但这个代码是独立与主程序的,就相当于一个扩展,它的执行与主 APP 无关,也不可能唤醒保活之类的

    这个会不会计算到后台运行时间我并不确定
    不过后台运行就算没有任何权限,APP 在挂起后也有不短的一段时间可以继续在后台运行的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2807 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:37 · PVG 15:37 · LAX 23:37 · JFK 02:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.