V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
tsinghan
V2EX  ›  iDev

app 切换后台时,能不能起一个后台任务,继续执行操作?

  •  
  •   tsinghan · 2015-05-06 20:25:08 +08:00 · 4118 次点击
    这是一个创建于 3518 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我觉得应该能吧, 像微信你发一张图片,还没法完,将app切换到后台, 再切换回来的时候图片已经发送完了, 可是我google了一下, 没找到那个方法?

    19 条回复    2015-05-07 17:16:01 +08:00
    moonagic
        2
    moonagic  
       2015-05-06 20:51:12 +08:00
    1楼这种高级黑..
    Septembers
        3
    Septembers  
       2015-05-06 20:51:43 +08:00
    额 没注意这是iOS节点 抱歉
    little_cup
        4
    little_cup  
       2015-05-06 21:06:57 +08:00
    1楼这黑得(
    orvice
        5
    orvice  
       2015-05-06 21:08:37 +08:00
    @little_cup 心疼我杯
    tsinghan
        6
    tsinghan  
    OP
       2015-05-06 21:24:43 +08:00
    求答案~~~
    Septembers
        7
    Septembers  
       2015-05-06 22:43:44 +08:00
    SeanChense
        8
    SeanChense  
       2015-05-06 23:05:48 +08:00 via iPhone
    平时没注意这个问题。
    刚刚试了下,上传一张图片,按 home 键,过了一会儿再回到我的应用,发现图片已经发送完了。

    AFNetworking 中的异步操作。
    arron
        9
    arron  
       2015-05-06 23:10:00 +08:00
    这种短时间的任务都是用 application beginBackgroundTaskWithExpirationHandler。 有时间限制,最多10分钟?系统可能随时终止你的任务。
    tangooricha
        10
    tangooricha  
       2015-05-06 23:10:27 +08:00   ❤️ 1
    @tsinghan 据说360为了这个问题曾经这么干过,弄一段无声的mp3在后台循环播放。不知道是真是假,没验证过,仅供参考。
    neoblackcap
        11
    neoblackcap  
       2015-05-06 23:29:53 +08:00
    @tangooricha 其曲同工啊,貌似支付宝在Android下面也试过在桌面展示一个像素的界面,为的就是不让GC回收自己。不知道IOS能否这样做呢?

    不过这样的做法实在是太流氓了。
    pH
        12
    pH  
       2015-05-07 07:41:19 +08:00 via iPad
    @tangooricha
    @neoblackcap 难怪电量耗得……
    0x5e
        13
    0x5e  
       2015-05-07 08:17:09 +08:00 via iPhone
    @tangooricha确实可行的,就是过审核不太好过一点
    TheLamb
        14
    TheLamb  
       2015-05-07 10:01:21 +08:00
    @0x5e 这样搞,貌似抓到就是被下架的节奏
    0x5e
        15
    0x5e  
       2015-05-07 10:33:42 +08:00 via iPhone
    @TheLamb 审核过了以后,还会抽查不?过审核的话可以调整在线参数应该还算好过。。
    TheLamb
        16
    TheLamb  
       2015-05-07 11:06:36 +08:00
    @0x5e 那就母鸡了
    tsinghan
        17
    tsinghan  
    OP
       2015-05-07 11:12:14 +08:00
    Backgroud 后台 程序在后台而且能执行代码,大多数程序进入这个状态后会在在这个状态上停留一会。时间到之后会进入挂起状态(Suspended)。有的程序经过特殊的请求后可以长期处于Backgroud状态

    Suspended 挂起 程序在后台不能执行代码。系统会自动把程序变成这个状态而且不会发出通知。当挂起时,程序还是停留在内存中的,当系统内存低时,系统就把挂起的程序清除掉,为前台程序提供更多的内存。
    lqzhgood
        18
    lqzhgood  
       2015-05-07 12:11:28 +08:00
    @neoblackcap QQ也是~ miui还专门说了这个事,为什么没法kill QQ
    0x5e
        19
    0x5e  
       2015-05-07 17:16:01 +08:00
    @tsinghan 反正是可行的~
    切到后台以后播放无声音乐,上传照片,上传完毕或者多次失败后关闭音乐,挂起程序
    过审核就是另一码事了。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2349 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 00:22 · PVG 08:22 · LAX 16:22 · JFK 19:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.