首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使iOS后台运行代码

如何使iOS后台运行代码 需求 最近在开发一个关于校园的项目,其中有这么一个需求:学生晚上8:00第一次打完卡后在当天夜晚11:00时需要再一次上传学生当前地理位置,判断是否还在宿舍(MMP防不胜防)。...mmp 注意:以下所有方法都只考虑APP没有被杀死,仅是在后台或者锁屏状态下。 iOS系统有这么一个机制:退到后台的APP可以有3分钟或者10分钟继续执行代码。...如果想更长的时间允许你的代码,可以使用地理位置、后台播放无声音乐、VoIP。...参考此链接iOS保持App真后台运行 地理位置刷新保持APP代码运行 当退到后台时开启地理位置刷新,每隔一段时间可以运行一下代码,然后又马上被挂起。...所以整个过程是断断续续的,并且长时间保持APP后台地理位置刷新非常费电,用户估计会不允许。 后台播放无声音乐 这个可以让APP在后台处于运行状态,执行你想要的操作。但是这个有很大风险被拒。

1.8K21

基础篇-iOS后台运行以及相关

,那么后台模式是什么呢,以及怎样实现呢? iOS 提供的后台运行方式 ? 上图为 iOS 提供的后台运行方式列表,如果需要,可在 Xcode 的项目设置中开启对应的选项。...iOS 不是通过一直让该应用处于激活状态来达到这个目的,而是同样也会将这类的应用挂起,但同时会在应用被挂起期间由系统接管它的 VOIP 的 Socket,当这个 Socket 有数据通信时,系统会再次唤醒处于挂起状态的应用...其中VOIP需要绑定一个Socket链接并申明给系统,系统将会在后台接管这个连接, #一旦远端数据过来,你的App将会被唤醒10s(或者更少)的时间来处理数据,超过时间或者处理完毕,程序继续休眠 Newsstand...除了系统官方极少数程序可以真后台,一般开发者开发出来的应用程序后台受到以下限制: 用户按Home之后,App转入后台进行运行,此时拥有180s后台时间(iOS7)或者600s(iOS6)运行时间可以处理后台操作...小结 关于应用后台模式运行以及其它相关的知识,后续会持续更新 ---- 本文参考文章 iOS开发:后台运行 iOS 后台运行实现

4.9K11
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    微信iOS收款到账语音提醒开发总结

    分别是Silent Notification和VoIP Push Notification,客户端在被唤醒之后将获得30s的后台运行时间,这段运行时间足以请求合成语音数据并播放。...2.VoIP Push Notification:VoIP Push Notification则是在iOS8以上才支持的新Push类型,相比于Silent Notification,VoIP Push具有高优先级...image.png 需要注意的是,只有iOS10以上才支持app被唤醒后在后台/锁屏状态下播放音频。...所以iOS10以下的设备,在收到VoIP Push后只能在local push上设定一段固定铃声,这也是为什么iOS10以下只有“微信支付收款到账”,而没有后面具体的金额数值。...才可以在后台播放音频文件,这两种模式是不受静音开关控制的。

    3.6K60

    iOS后台唤醒实战:微信收款到账语音提醒技术总结

    本文借此总结了iOS平台上的APP后台唤醒和语音合成、播放等一系列技术开发过程中遇到的坑和小技巧,希望与您分享。...分别是Silent Notification和VoIP Push Notification,客户端在被唤醒之后将获得30s的后台运行时间,这段运行时间足以请求合成语音数据并播放。...2)VoIP Push Notification:VoIP Push Notification则是在iOS8以上才支持的新Push类型,相比于Silent Notification,VoIP Push具有高优先级...需要注意的是:只有iOS10以上才支持app被唤醒后在后台/锁屏状态下播放音频。...所以iOS10以下的设备,在收到VoIP Push后只能在local push上设定一段固定铃声,这也是为什么iOS10以下只有“微信支付收款到账”,而没有后面具体的金额数值。

    2.6K11

    三步走起 提升 iOS 审核通过率 上篇

    (多任务应用只允许在后台运行如下相应的服务:VoIP,音频播放,地理位置,任务记录,本地提醒等。)...However, using VoIP in this manner is not the intended purpose of VoIP, which, as indicated in the iOS...简评: 应用为了实现后台保持在线的功能,在 Info.plist 中定义的 UIBackgroundModes,间接声明了支持 VoiP 功能,实际应用被苹果认为并未按照 Voip 的定义去实现,导致被拒...应对措施 为了提前验证 App 后台服务器基于此场景下的反应,预审团队采用美国 V** 方式来模拟苹果审核团队的访问网络环境。...保证应用或者游戏可以在市场占有率最高的两个系统版本及硬件配置上可以流畅运行。

    1.6K90

    iOS使用VOIP与CallKit实现体验优质的网络通讯功能

    iOS使用VOIP与CallKit实现体验优质的网络通讯功能     VOIP是Apple提供给开发者的网络电话功能接口。简单来说,其可以让你的应用程序在完全杀死的情况下被服务端唤醒。...试想一下,用户可以在锁屏,应用被杀死,应用在后台等情况下收到通讯请求并且弹出系统的通话界面进行交互是多么酷的一件事。...一、创建VOIP推送证书     VOIP说是一种网络电话服务,其实质是一种特殊的长连接,使用它每个网络电话类APP不需要自己单独进行保活维护,在进行通话请求时,只需要发送一条VOIP推送,VOIP推送会将应用程序拉起...(8_0);//VOIP推送 PK_EXPORT PKPushType const PKPushTypeComplication NS_AVAILABLE_IOS(9_0);//Watch更新 PK_EXPORT...工程运行后,会在用户的“设置->电话->来电组织与身份识别”项目中看到扩展程序: ? 当用户打开此服务或者调用上面的reloadExtension时,会从执行扩展程序的相关方法来重新加载号码库。

    3.6K20

    写作小技能:卡片式写文章(用3-5张卡片写文)

    积累日常开发工作中遇到的问题以及解决方案 c.把复杂的问题讲解的很简单很清楚,有各种各样的推导和方案的比较( 原理、思路、方法论) 1.2 用卡片模板写文章的具体例子 iOS App处于后台/被杀死的状态仍可进行语言播报的实现...核心概念: 背景:iOS12.1 之后 AVAudioPlayer 无法在后台播放语音。...历史方案1:Voip 推送 不使用Voip 推送的原因:iOS13中(XCode11编译)苹果不再允许PushKit应用在非voip电话的场景上,如果需要使用PushKit的话则需要接入CallKit的接口...,导致收到客户端收到Voip Push时会拉起一个接打电话的全屏界面。...历史方案2:iOS 10新增的Service Extension b. 个人体验:在iOS15之前,我使用Service Extension方案实现App处于后台仍可进行收款到账的语言播报。

    95410

    iOS_App性能优化(Energy Efficiency)指南整理

    文章目录 iOS应用能源效率指南 一、能源要点 二、减少工作并按优先顺序排列 1、减少后台工作 2、准确指定`QoS`优先级 3、减少计时器的使用 4、最小话 I/O 5、对`低电量模式`做出响应 三...、最小化和延迟 `网络请求` 1、最小化网络请求 2、推迟网络请求 3、VoIP最佳做法 四、有效使用图形、动画、视频 五、优化位置和动作 1、降低位置的准确性和持续时间 2、减少运动更新的频率 六、优化通知...、速度、交互迅速、温度 二、减少工作并按优先顺序排列 1、减少后台工作 避免以下行为: 后台活动完成后不通知系统 播放无声音频 执行位置更新 与蓝牙配件互动 可以推迟的下载 applicationWillResignActive...用户启动:打开/保存文档、点击… Default Default GCD全局队列 Utilize Low 不需要立即得到结果的, 通常有进度条:下载、导入… Background Background 后台运行...最佳做法 使用VoIP推送来避免持久连接(iOS8开始支持PushKit VoIP) 四、有效使用图形、动画、视频 减少视图数量 减少透明度的使用 清除不可见的视图,如:移除屏幕的、被遮挡的、等等 尽可能使用较低的动画帧率

    1.4K30

    IOS应用内存释放机制

    这是由iOS系统管理决定的,但APP退出在后台后,只有10秒的持续运行时间,然后暂停。...但该APP还在内存中,当出现内存警告,也就是别的APP要运行,而此时内存又不足的情况下,系统会回收停在后台APP所占用的内存。如果出现这种情况,那么你再次打开你的APP,就会重新启动。...不知道你是为什么要让APP在后台还要继续运行,如果非得这样,那可以使用多线程技术中的gcd,可以让APP退出后继续运行很长一段时间(大概10分钟) iOS APP类型: 1. 保存现场。...2. iOS支持的“多任务”。按下Home键转入多任务状态,保留在内存中,但只能系统允许的动作:比如GPS,比如VoIP,比如音乐等等。 3. 真正的桌面级别的多任务。...这个级别的app在后台没有任何限制动作。

    3K10

    iOS 后台任务

    前言 iOS的后台任务总共可分为两大类 一种是只针对某种类型的后台模式 另一种是请求系统给予额外的后台时间 无论上面的那种模式 一旦程序进入后台后 都无法处理远程的推送信息 不知道滴滴打车后台播单是如何实现的...(downloading new issues for newsstand apps) 4.VoIP 呼叫(handing VoIP calls) 这几种模式都要在配置文件中配置相应得配置 如 后台播放音频文件...2) 获取定位更新 一般来说只要进入后台时 是在获取定位 定位只要不停止 就会一直在后台运行 需要提醒的是:仅当你的app确实能够根据后台定位来提供有益于用户的价值,才可使用该模式。...3) 杂志app中下载新的期刊 同样下载完成后 程序就会挂起 4) VoIP 呼叫 最后一个是一个强大的后台模式,它允许你的APP在后台时运行任意代码。它没有时长限制。...更重要的,app若崩溃或者重启设备,APP仍然自动在后台运行。

    67910

    【Dev Club分享】QQ电话适配iOS10 Callkit框架分享

    本期,我们邀请了 腾讯 SNG iOS 开发工程师“段定龙”,为大家分享《QQ电话适配iOS10 Callkit框架分享》。...他分为三大模块:VoIP,CallCenter和来电屏蔽,要实现上述功能我们只需要关注Voip模块。Voip模块里主要有两个类:CXProvider和CXCallController。 ?...结语 最后提一下Pushkit通道的使用可以保证用户杀进程或者退后台了,依然可以后台唤起进程,完成通话,不过这不是今天的重点,就带过了。...有失败的可能,比如我们后台向苹果后台发送,但是最终苹果后台没有给客户端下发,或者延时下发。目测还是比较可靠的,具体数据我这没有。成功率目测至少9成以上吧。...Q5:APP向下兼容到iOS7时,需要做些什么处理呢? 这个特性只在iOS10上适用,注意做好版本保护就行。

    2.7K60

    iOS--无限后台定位

    2、Location Services,这是后台的定位,系统会拥有统一页面进行管理。 3、VoIP,后台语音服务,类似Skype通话应用需要调用,可进行后台的语音通话。...5、 Background Task Completion,这个接口早在iOS 4时候便拥有,其可以供任意类型的APP使用,不过在旧系统中,这个接口的后台限制运行时间仅为10分钟,意味着当应用退至后台,...其后台运行仅能持续10 分钟便会转至休眠状态。...iOS 7中对这个接口作出了改变,原来的为连续10分钟,即不论你这10分钟内用户是否关闭屏幕进入休眠状态,应用仍然会在后台等待10分钟完结后推出,而新的 改进为假如遇到关闭屏幕休眠的情况,这后台运行的10...如现在有一些词典应用带有后台复制选词功能,实际上其是利用了这个接口,如果用户开启词典后并推出,即使屏幕关闭,但词典仍然在后台运行,电量消耗还是比较大的,在iOS 7上,这个问题可以得到解决。

    81730

    SIP代理、SIP集群和媒体集群调研

    php程序包拷贝到/var/www路径下,不能使用/home,/usr等路径; 2、iptable没关,导致网络不通; 另外,OV500提供了强大的计费管理,话单管理,对理解完整的业务链条很有帮助,建议做VOIP...业务后台的同学可以细致的分析这块的完整业务; 服务部署完后,需要通过OV500的管理后台(后台管理账户可以通过查表找到,admin/123456,文档中没有说明,所以需要全面的了解,然后就不会在某块被阻塞住...update the target hunt network           $query = sprintf("select domain, contact, username, callid, socket... = $result['socket'];//udp:11.12.117.200:5061             //$index = strpos($socket_target, ':') ;             ... = $arr[1];//substr($socket_target, $index + 1);                    $this->Hunt_Network_PORT = $arr[2

    4.2K10

    iOS10 SiriKit QQ适配详解

    概述 苹果在 iOS10 开放了 SiriKit 接口给第三方应用。目前,QQ已经率先适配了 Siri 的发消息和打电话功能。...这意味着在 iOS10 中你可以直接告诉 Siri 让它帮你发QQ消息和打QQ电话了,听起来是不是很酷炫? 那么第三方应用使用 Siri 的体验究竟如何?哪些应用可以接入SiriKit?...在官方文档中,SiriKit 将对不同场景的语音支持划分为不同的 domain,目前,SiriKit 支持的 domain 包括:VoIP 电话、发消息、转账、图片搜索、网约车订车、CarPlay 和餐厅预定...Custom UI 的实现相对较简单,和 iOS app 的开发一样,都是通过 UIViewController 的子类实现。...这里需要注意的是,Intents UI Extension 的进程并不会在界面销毁后就退出,很可能只是在后台处于休眠状态,下次 response 到来时再被唤醒。 ?

    2.3K30

    如何全面监控 iOS 千奇百怪的崩溃

    通常情况下,只有那些地图、音乐播放、VoIP 类的 App 才能通过审核。...PushKit PushKit 后台唤醒 App 后能够保活 30 秒。 它主要用于提升 VoIP 应用的体验 Background Task Background Task 方式,是使用最多的。...background_task = UIBackgroundTaskInvalid; }];} 在这段代码中,yourTask 任务最多执行 3 分钟,3 分钟内 yourTask 运行完成...0xc00010ff 表示 App 因为运行造成设备温度太高而被杀掉。 0x8badf00d 这种情况是出现最多的。...如果觉得不错,素质三连、或者点个「赞」、「在看」都是对笔者莫大的支持,谢谢各位大佬啦~ 推荐阅读 iOS 微信支付开发(更新版) iOS 支付宝支付开发(更新版) 了解「网罗开发」领书籍、源码 如有问题请留言或扫码加微信交流

    2.2K20

    客户端检查篇

    作者:互娱iOS预审团队,隶属于互娱研发部品质管理中心,致力于互娱产品的iOS审核前的验收工作。...关于此部分的检查,我们通常关注如下方面的内容: 验收思路 1、 UIBackgroundModes键:这是一个声明后台服务的键,声明的后台功能必须实现。...可设置的值有audio、location、voip、fetch、remote-notification、bluetooth-centra、等;2、 UIDeviceFamily键:这是一个支持设备类型的键...,需在iPhone、iPod上运行时需设置1,iPad需要设置2;3、 UIRequiredDeviceCapabilities键:声明的属性必须实现。...App后台服务器基于此场景下的反应,预审团队采用美国V**方式来模拟苹果审核团队的访问网络环境(应用从美国V**网络中访问后台服务器)。

    2.1K80
    领券