码迷,mamicode.com
首页 > 移动开发 > 详细

iOS开发简单的实现后台任务(诸如后台播放音乐,定时器,后台定位等)

时间:2017-09-13 17:22:41      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:循环播放   状态   网络电话   注意   objc   自己   真机测试   进入   streams   

 

最多能运行多长时间,没挑战过极限,具体能保持多长时间需要自己测试下。

注意:用真机测试

 

直接上代码

在appdelegate的.m中的进入后台时加入一些代码操作即可

 

  1. /** 
  2.  *  当app进入后台时调用 
  3.  */  
  4. - (void)applicationDidEnterBackground:(UIApplication *)application  
  5. {  
  6.     /** 
  7.      *  app的状态 
  8.      *  1.死亡状态:没有打开app 
  9.      *  2.前台运行状态 
  10.      *  3.后台暂停状态:停止一切动画、定时器、多媒体、联网操作,很难再作其他操作 
  11.      *  4.后台运行状态 
  12.      */  
  13.     // 向操作系统申请后台运行的资格,能维持多久,是不确定的  
  14. //    self.task = [application beginBackgroundTaskWithExpirationHandler:^{  
  15. //        // 当申请的后台运行时间已经结束(过期),就会调用这个block  
  16. //          
  17. //        // 赶紧结束任务  
  18. //        [application endBackgroundTask:self.task];  
  19. //    }];  
  20.     __block UIBackgroundTaskIdentifier task = [application beginBackgroundTaskWithExpirationHandler:^{  
  21.         // 当申请的后台运行时间已经结束(过期),就会调用这个block  
  22.   
  23.         // 赶紧结束任务  
  24.         [application endBackgroundTask:task];  
  25.     }];  
  26.       
  27.     /** 
  28.     1.定义变量UIBackgroundTaskIdentifier task 
  29.     2.执行右边的代码 
  30.     [application beginBackgroundTaskWithExpirationHandler:^{ 
  31.         // 当申请的后台运行时间已经结束(过期),就会调用这个block 
  32.          
  33.         // 赶紧结束任务 
  34.         [application endBackgroundTask:task]; 
  35.     }]; 
  36.      3.将右边方法的返回值赋值给task 
  37.      */  
  38.       
  39.       
  40.     // 在Info.plst中设置后台模式:Required background modes == App plays audio or streams audio/video using AirPlay  
  41.     // 搞一个0kb的MP3文件,没有声音  
  42.     // 循环播放  
  43.       
  44.     // 以前的后台模式只有3种  
  45.     // 保持网络连接  
  46.     // 多媒体应用  
  47.     // VOIP:网络电话  
  48. }

iOS开发简单的实现后台任务(诸如后台播放音乐,定时器,后台定位等)

标签:循环播放   状态   网络电话   注意   objc   自己   真机测试   进入   streams   

原文地址:http://www.cnblogs.com/Yishu/p/7515569.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!