jjzjj

multitasking

全部标签

ios - iOS 应用程序如何在应用程序打开时知道键盘是否已经在屏幕上(iOS 多任务处理)

iOS应用程序如何知道应用程序打开时屏幕上是否已经有键盘?应用程序运行后,它可以接收键盘显示/隐藏通知。但是,如果应用程序在分屏模式下作为辅助应用程序打开,而主应用程序已经显示键盘,则辅助应用程序不会收到任何通知来告诉它调整键盘View。据我所知,这些通知是判断键盘是否显示及其框架是什么的唯一方法,然后获得必要的布局约束。有没有办法获取此信息,或者是否应该针对此问题提交错误报告? 最佳答案 目前无法检测另一个应用是否拥有键盘焦点。您可以使用AutoLayout来解决问题虽然。或者这个Howtodetectwhenkeyboardis

ios - 如何在不被打扰的情况下在后台循环播放声音?

以下代码应循环播放无声音频剪辑,以保持应用程序在后台处于事件状态://setsessions.............//playaudio_player=[[AVAudioPlayeralloc]initWithContentsOfURL:urlerror:NULL];audio_player.numberOfLoops=-1;//alwaysrepeatboolret=[audio_playerplay];您按下主页按钮,它会在后台播放,使您的应用程序保持事件状态。但是,当您调用电话时,播放器会停止并且[audio_playerplay]之后会返回false。那么问题来了,在后台的

ios - 我可以在 iOS 中确定应用程序是从待机状态还是从多任务处理恢复

我目前正在处理我们的iPad应用程序的更改请求,该请求要求我以两种不同的方式处理应用程序的恢复,具体取决于应用程序是否从多任务处理返回(用户在另一个应用程序或主屏幕上处于事件状态)并返回应用程序)和待机(iPad通过顶部的待机按钮或关闭SmartCover切换到待机状态)在这两种情况下,我的AppDelegate都会调用以下方法:applicationWillResignActive后跟applicationDidEnterBackground当我按下主页按钮进入主屏幕或关闭SmartCover时applicationWillEnterForeground和applicationDid

ios - 在应用程序切换器中更新 UI

当我的应用程序显示在应用程序切换器中时,我如何更新它,特别是在那一秒。我看过WWDC视频“多任务处理的新功能”,但他们的方法总是更新UI以响应新信息或根据耗时量。我每秒都会重绘一部分UI,我希望用户无需打开我的应用程序即可获得他们想要的信息。我不想在后台每秒重绘我的UI,只在应用程序切换器上显示应用程序或加载应用程序切换器时重绘一次。 最佳答案 如果您的意思是当用户在您的应用程序中并双击时,那么您应该在您的应用程序退出事件状态时进行更新。如果您的意思是,当应用程序在后台并且用户在任务切换器中经过时,唯一的方法是实现推送功能并在收到推

ios - 当应用程序处于后台时 ping 服务器

我需要让应用程序每分钟向服务器发送一个简单的GET请求(“ping”),以便它知道用户仍然在线。当应用程序处于事件状态并且在使用“beginBackgroundTaskWithExpirationHandler”进入后台10分钟后,我没有遇到任何问题。但是,除非用户手动终止应用程序,否则我如何才能一直重复请求? 最佳答案 这并不是它真正的工作方式——它不是在后台持续运行的Windows或Mac应用程序。您可能想要做的是使用backgroundfetchprocess,iOS将定期运行一种特定的方法,允许您在应用程序处于后台(或根本不

iOS:在多任务处理中检测 Regular 或 Compact

在我的应用程序中,我允许使用多任务模式。但如果我的观点太局限,我需要采取一些行动。观看Apple文档时我看到了这张图片您可以看到,在iPadPro的SplitView中,两个View都是规则的,而在其他iPad中,两个View都是紧凑的。我有什么东西可以让我知道我当前的View是规则的还是紧凑的?谢谢 最佳答案 这是我的解决方案:if(self.view.traitCollection.horizontalSizeClass==UIUserInterfaceSizeClassRegular){NSLog(@"REGULARHORIZ

ios - NSURLSessionDataTask 在 iOS 后台的同一个 NSURLSession 中的 NSURLSessionDownloadTask 之后没有被调用

我的iOS应用按以下方式运行我有一组音频文件名,我检查文件是否存在。如果它存在,它就会开始播放。完成后我开始播放下一个音频。如果文件不存在,我会发出一个NSURLSessionDataTaskPOST请求,返回一个字符串,它是要下载的文件的URL。(这URL在一分钟内有效)。收到URL后,我会发出NSURLSessionDownloadTask请求并下载文件、保存文件并播放音频。当应用程序处于前台时,整个过程工作得很好。当所有音频都存在且应用程序在后台运行时,也能完美运行。当音频文件不存在且应用程序在后台运行时出现问题我的代码:BackgroundFetchManager.h@inte

论文笔记|Not All Tasks Are Equally Difficult MultiTask Reinforcement Learning with Dynamic Depth Routing

AAAI24摘要多任务强化学习致力于用单一策略完成一组不同的任务。为了通过跨多个任务共享参数来提高数据效率,常见的做法是将网络分割成不同的模块,并训练路由网络将这些模块重新组合成特定于任务的策略。然而,现有的路由方法对所有任务采用固定数量的模块,忽略了具有不同难度的任务通常需要不同数量的知识。这项工作提出了一种动态深度路由(D2R)框架,该框架学习策略性地跳过某些中间模块,从而为每个任务灵活选择不同数量的模块。在此框架下,我们进一步引入了ResRouting方法来解决离策略训练期间行为和目标策略之间不同的路由路径问题。此外,我们设计了一种自动路由平衡机制,以鼓励对未掌握任务的持续路由探索,而不

iphone - "failed to resume in time"从后台崩溃恢复

好的,所以进入后台我隐藏了所有内容。当我切换回来时,我仍然遇到未能及时恢复错误。如果所有内容都被隐藏,为什么它会在drawRect中崩溃?关于如何处理此类“恢复失败”错误的任何想法?IncidentIdentifier:0E5ADFDF-1EB1-4ECC-9F02-57B37F1BBBA1CrashReporterKey:17186e938075dd5907223199eccdc85176f18698HardwareModel:iPad1,1Process:hexProto[2162]Path:/var/mobile/Applications/31D43A9F-0EF3-4D03-8

ios - 线程阻塞 Objective-C

我刚刚阅读thisanswer(答案已被删除)而且我确信我已经看到应用程序在挂起后崩溃,所以我读到的内容是有道理的。IfyoublockthemainthreadfortoolongtheOSwillkillyourapp.但是我写了一些测试,发现在每次等待大约2-5分钟后,没有一个导致应用程序崩溃。断点确认我正在主线程上运行。有人可以证实或反驳我读到的内容,还是我只是选择了很多非阻塞的选项?如果我选择了非阻塞选项,有人可以解释为什么这些选项是非阻塞的吗?while(true){/*Nothing*/}while(true){NSLog(@"nothing");}for(;;);sle