草庐IT

ios - 完成处理程序闭包是否始终在后台线程中运行?

Completionhandler闭包在iOS开发中很常见,比如URLSession类中的dataTask(with:completionHandler:)UI引擎由主线程管理,URLSession的API调用在后台线程下运行,如果处理程序中需要UI更新,则必须分派(dispatch)到主线程。问题1:iOS框架中的所有完成处理程序闭包是否都在后台线程中运行?问题1.1:是否所有转义闭包(例如,由开发人员创建的)都在后台线程中运行?问题2:我在iPhoneX模拟器中看到了多达8个线程。ios中哪个是主线程,哪个是后台线程?他们有不同的优先级和计算能力吗? 最

ios - Objective-C:如何让AVPlayer在后台继续播放

Iknowthattherearealotquestionslikeminebutnothingisworkingforme.我试图在退出应用程序时让AVPlayer继续播放,我已经实现了以下Singleton类:.h文件:#import#import@interfaceLiveStreamSingleton:NSObject{}+(LiveStreamSingleton*)sharedInstance;-(void)playStream;-(void)stopStream;-(bool)status;@end.m文件:#import"LiveStreamSingleton.h"sta

ios - 如何在应用程序打开或关闭的特定日期时间在后台快速运行任务

我正在处理闹钟应用程序,我需要在特定时间安排闹钟,我使用scheduleLocalNotification来安排闹钟,它工作正常,如我所愿。但是在触发警报之前,我需要运行对我的API服务器的请求。在该请求中,我想检查从API服务器返回的一些参数,如果满足某些条件。如果有人有在特定日期运行的方法-swift时间请帮助我funcaddAlarm(newAlarm:Alarm){//CreatepersistentdictionaryofdatavaralarmDictionary=NSUserDefaults.standardUserDefaults().dictionaryForKey(

iOS 为什么系统在后台使用位置杀死应用程序

我有一个应用程序在前台和后台使用位置更新。使用CoreLocation框架,我已经实现了应用程序,以便每5分钟后将位置更新发送到服务器,使用this代码作为引用。这在前台工作正常,但当应用程序进入后台时,它会在30分钟到一个小时后被操作系统杀死。我希望该应用至少在8小时内获取更新,即使在后台也是如此。此外,该应用程序每小时使用大约10%的电量。这与应用程序在后台被杀死有关吗?如果是这样,那么我该如何解决电池问题?否则,谁能告诉我问题出在哪里?以下是设备的崩溃日志:ExceptionType:00000020ExceptionCodes:0x000000008badf00dExcepti

Swift:在后台同步执行代码; queue.sync 没有像我预期的那样工作

我想在后台同步执行一些代码,我真的认为这是要走的路:letqueue=DispatchQueue.global(qos:.default)queue.async{print("\(Thread.isMainThread)")}但这会打印true除非我使用queue.async。async是不可能的,因为代码将被并行执行。如何实现后台同步运行多个block?我想要实现的目标:将我的应用程序中的事件与设备日历同步,这在后台发生。执行此操作的方法可以从不同的地方多次调用,所以我想在后台按顺序保持它。 最佳答案 异步执行不是您的问题,因为您

ios - Swift CoreMotion 在后台检测设备上的点击或敲击

我目前正在构建我的第一个iOSSwift应用程序,我想通过这个应用程序在后台运行时执行一个操作。一旦用户在设备上点击两次,就需要执行该操作。我在应用功能中启用了后台模式:位置更新并在AppDelegate中设置一个AccelerometerUpdatesToQueue函数:letmanager=CMMotionManager()funcapplication(application:UIApplication,didFinishLaunchingWithOptionslaunchOptions:[NSObject:AnyObject]?)->Bool{//Overridepointfo

ios - 在后台监控 iBeacon 信标

我一直在开发一个iOS应用程序并尝试使用Apple的CoreLocation和iBeacon技术。到目前为止,我使用了三个具有不同UUID的信标。一切正常,直到我决定向我的应用程序添加更多信标。直到那时我才遇到奇怪的问题。据说,一个应用程序在后台时可以一次监控多达20个信标区域-但在我的特定情况下,这个数字似乎是3。我尝试了不同的方法,但没有任何效果。当我在他们的数组中打乱信标时,结果如我所料-只有前3个信标区域在应用程序处于后台时触发了didEnterRegion和didExitRegion事件。这在前台时不适用。请考虑一下:我有一组自定义信标对象(从API使用)我为每个自定义信标对

iOS App - 使用 Swift 在后台发送邮件

这个问题在这里已经有了答案:SendinganautomaticEmailwithSwiftandXcode6(3个答案)关闭7年前。我有一个应用程序,我有一个简单的表单来收集数据,然后想将包含该数据的电子邮件发送到特定的电子邮件地址。理想情况下,我只想让这对用户透明-他们只需按下提交/发送,电子邮件就会自动创建并在用户不知情的情况下在后台发送到该电子邮件地址。我正在使用objective-C获取这方面的教程,但我想使用Swift来实现它。是否有推荐的后台发送电子邮件的方式?

ios - 应用程序在后台运行时发送本地通知 Swift 2.0

我试图在用户最小化应用程序时(通过单击iPhone的主页按钮或同时锁定手机)向用户发送“推送通知样式”警报。我的应用程序持续解析一个XML文件(每10秒),我希望该应用程序继续运行,以便在我的程序中满足某些条件后,即使在用户最小化该应用程序之后,它也会向用户发送本地通知或锁定他们的手机。我已经从教程中恢复过来,每个人似乎都在“安排”通知,但这对我不起作用,因为我的通知不是基于时间的,而是基于满足的条件。到目前为止我做了什么:AppDelegate.swiftfuncapplication(application:UIApplication,didFinishLaunchingWithO

ios - 如何将音频输入添加到 AVCaptureSession 并允许其他应用程序在后台播放音乐

我正在尝试将音频输入添加到我的AVCaptureSession()并且效果很好。但是,我也想支持希望从其他应用程序(如Spotify)在后台播放音乐的用户,并为我的录音维护此audioInput。这怎么可能?letcaptureSession=AVCaptureSession()letaudioDevice=AVCaptureDevice.defaultDeviceWithMediaType(AVMediaTypeAudio)audioInput=AVCaptureDeviceInput.deviceInputWithDevice(audioDevice,error:&err)as?A