错误:_handle onLaunch iOS 9 中的特定操作

2024-01-30

我在 iOS 9 上收到以下错误:

    -[UIApplication_handleNonLaunchSpecificActions:
      forScene:
      withTransitionContext:
      completion:] unhandled action -> 
      <FBSSceneSnapshotAction: 0x150b2aef0> 
       {
            handler          = remote;
            info = <BSSettings: 0x15333f650> 
            {
                (1) = 5;
            };
        }

有其他人遇到过这个错误或其影响吗?怎么了?


你的代码没有任何问题。这是 Apple 内部的日志消息,您应该对此进行雷达归档。

有两个提示表明这是probably苹果的代码:

  1. 下划线开头的方法名称_handleNonLaunchSpecificActions:forScene:withTransitionContext:completion是一个约定,表明该方法是声明它的类的私有/内部方法。(请参阅这条评论 https://stackoverflow.com/questions/822487/how-does-an-underscore-in-front-of-a-variable-in-a-cocoa-objective-c-class-work#comment632212_822995.)

  2. 可以合理猜测中的两个字母前缀FBSSceneSnapshotAction是 FrontBoard 的简写,根据 Rene Ritchie 在“iOS 9 愿望清单:访客模式” http://www.imore.com/ios-9-wish-list-guest-mode是与启动应用程序相关的整个软件系列的一部分:

在 iOS 8 中,Apple 将其系统管理器 SpringBoard 重构为几个更小、更集中的组件。除了已经分离出来处理后台任务的 BackBoard 之外,他们还添加了用于前台任务的 Frontboard。他们还添加了 PreBoard,以在安全、加密的条件下处理锁定屏幕。 [...]

我不知道是什么BS前缀在BSSettings是用于,但对此日志消息的分析将表明这不是您所做的任何事情,并且您应该提交一个包含重现日志消息步骤的雷达。

如果你想尝试获取堆栈跟踪,你可以实现链接到此处的类别 https://stackoverflow.com/a/33034072/224988。有些人会认为覆盖私有 API 是一个坏主意,但在这种情况下,临时注入来获取堆栈跟踪不会太有害。

EDIT:

但是,我们仍然想知道这个动作是什么。所以我打了一个断点-[UIApplication _handleNonLaunchSpecificActions:forScene:withTransitionContext:completion]并开始打印寄存器值并找到一个名为FBSceneImpl其中包含有关我的应用程序的大量信息:

我们能够找出接下来调用的是哪个私有方法(存储在程序计数器,寄存器 15 中)。

我尝试找到未处理的FBSceneSnapshotAction日志中引用了,但没有骰子。然后,我将 UIApplication 子类化,并覆盖_handleNonLaunchSpecificActions:forScene:withTransitionContext:completion。现在我可以直接了解该动作,但我们仍然不知道它是什么。

然后,我再次查看了 FBSceneSnapshotAction。原来它有一个超类叫做BSAction.

然后我写了a tool https://github.com/mosheberman/introspector如同运行时浏览器 https://github.com/nst/RuntimeBrowser并查找 BSAction 的所有子类。事实证明,它们的列表相当多:

我们拥有的两个方法名称(一个来自日志,一个来自设备上的程序计数器)表明这些操作在幕后用于在系统中传递操作。

某些操作可能会发送到应用程序委托的回调,而其他操作则在内部处理。

这里发生的情况是,有一个操作未正确处理,并且系统正在注意到它。显然我们不应该看到它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误:_handle onLaunch iOS 9 中的特定操作 的相关文章

  • 基于 ID 的 UiLocalNotifications

    是否有关于根据那里的 Id 存储 UIlocalNotifications 并根据那里的 Id 取消通知的教程 在本地通知中 您有此词典的用户词典 您可以取消通知 http www picksourcecode com ps ct 1612
  • 方法调用中的插入符[重复]

    这个问题在这里已经有答案了 我正在阅读本教程 并遇到了这行代码 这让我感到困惑 localSearch startWithCompletionHandler MKLocalSearchResponse response NSError er
  • 从基元创建自定义形状

    我正在尝试通过组合原始形状来创建自定义物理形状 目标是创建一个圆形立方体 合适的方法似乎是初始化 形状 变换 我在这里找到的https developer apple com library prerelease ios documenta
  • 使用 iPhone 控制蓝牙音频设备

    我正在寻找为 iPhone 编写应用程序 它将能够控制汽车中的收音机和 CD 播放器 收音机和播放器具有可用的蓝牙连接 我开始这个问题是为了获得这个地方所需的所有信息 我有几个问题 但如果您发现任何我没有要求的对我开始开发此应用程序不重要的
  • 将 Xcode 4.5 新 XIB 文件恢复到 iOS<6

    我已经安装了Xcode 4 5 with iOS6 SDK以及其他用于测试目的的旧 SDK 从 4 3 到 6 0 很美 但是有一个BIG问题 生成一个新的 XIB 文件以兼容 iOS6 这是一个问题 因为我的应用程序需要运行在旧设备 不只
  • NSString 到 NSDate 的转换得到错误的结果[重复]

    这个问题在这里已经有答案了 可能的重复 NSDateFormatter 的时间错误 https stackoverflow com questions 5466419 wrong time from nsdateformatter NSDa
  • swift 中闭包和函数作为参数的区别

    我有将近 4 年的 Objective C 经验 并且是 swift 的新手 我试图从 Objective C 的角度理解 swift 的概念 所以如果我错了 请指导我 在目标 c 中 我们有块 可以稍后异步执行的代码块 这绝对是完全合理的
  • SwiftUI 更新主菜单 [已解决] kludgey

    真正的问题 你如何更新mainMenu在 SwiftUI 中 它真的可以工作吗 我在 SwiftUI 中构建了一个基于 MacOS 文档的应用程序 其中包括所有内置的文件菜单命令 即关闭 保存 复制 重命名 等 在保存文档之前 我会验证结构
  • 返回一个dispatch_async获取的变量[重复]

    这个问题在这里已经有答案了 基本上 一个方法需要返回一个在dispatch async中获取的NSDictionary 这是我尝试过的 NSDictionary fetchNSDictionary dispatch queue t Queu
  • Swift 3 中数组的 indexOf(_:) 方法的替换

    在我的项目 用 Swift 3 编写 中 我想使用从数组中检索元素的索引indexOf 方法 存在于 Swift 2 2 中 但我找不到任何替代方法 Swift 3 中是否有任何好的替代方法或类似的方法 Update 我忘记提及我想在自定义
  • 以编程方式检测应用程序是否正在设备或模拟器上运行

    我想知道我的应用程序在运行时是在设备还是模拟器上运行 有没有办法检测到这一点 原因是用模拟器测试蓝牙 api http volcore limbicsoft com 2009 09 iphone os 31 gamekit pt 1 woo
  • git 可以与 Xcode 集成吗?

    有没有办法将 git 存储库与 Xcode 内置的 SCM 功能一起使用 Xcode 4 原生支持 git WWDC 2010 上的开发者工具国情咨文演讲 在这里了解更多 Xcode 4 中的新增功能 http developer appl
  • IOS 上图像的加密/解密

    我们正在使用加密 解密和 UIIMAGE 如果我们加密和解密 UIIMAge 而不保存到 iphone 画廊中 它工作正常 但如果我们加密 保存到画廊中 将 加密的图像 加载到应用程序中 然后解密它效果不好 我们使用这个函数来加密 解密 保
  • iOS:我如何知道某个属性是否符合 KVO 标准?

    In the 键值观察编程指南 https developer apple com library archive documentation Cocoa Conceptual KeyValueObserving KeyValueObser
  • 调用了 numberOfRowsInSection 但未调用 cellForRowAtIndexPath

    在我的表视图中节中的行数被调用两次但是cellForRowAtIndexPath不叫 我想在 tableView 中显示 Facebook 好友列表 如果 cellForRowAtIndexPath 调用我的问题就解决了 我在这里的数组中得
  • 比较 Objective C 中的 NSNumber

    我是 Objective C 的初学者 对这种情况有点困惑 我有以下代码 if number1 lt number2 NSLog THE FOLLOWING NUMBER NSLog number1 NSLog IS LESS THAN N
  • GoogleSignIn ios 附加到谷歌表格

    我目前正在开发一个 iOS 应用程序 该应用程序需要写入登录用户拥有的 Google 工作表 要登录我正在使用的用户GoogleSignInpod 并附加到我正在使用的谷歌表GoogleAPIClientForREST Sheets pod
  • 如何像谷歌日历一样将单元格的内容滚动到表格视图中的另一个单元格中?

    我希望用户界面像谷歌日历那样进入桌面视图 它在不同的行中显示相同的日期事件 但是当您向上或向下滚动时 左侧的日期也会向上向下滚动 Can you please help me how to achieve this Please take
  • 您可以在 Apple TV 而不是外部服务器上托管 TVJS 文件吗?

    我已经从 Apple 下载了 TVMLCatalog 应用程序 该代码分为两部分 client 这包含 TVML 和 TVJS 文件 TVML目录项目 这是设置 TVML TVJS 的基本 Xcode 项目 我正在尝试主持clientTVJ
  • 在iOS中设置框架的原点

    我正在尝试以编程方式设置框架的原点 Method1 button frame origin y 100 方法二 CGRect frame button frame frame origin y 100 我尝试了方法 1 但它不起作用 显示错

随机推荐

  • 适用于 Windows 的 LLVM C++ IDE

    是否有一些适用于 Windows 的 C C IDE 融合的使用 LLVM 编译器 和 Clang C C 分析器 就像现代 Xcode 一样 我有 Dev Cpp 它使用过时的 GCC 并且代码 块 https en wikipedia
  • db2 中批量更新比单次更新快吗?

    我有一个包含 10 列的表 该表中有数千 数百万行 在某些情况下 我想一次更新超过 10K 条记录 目前我的场景代码按顺序工作 for i in primary key ids for all records to be updated e
  • 在 Mercurial 中回滚多个提交(在推送到公开之前)

    我知道回滚可以从本地存储库中的最新变更集中删除提交 但是 是否可以删除自上次推送以来的所有最新提交 而无需重新克隆共享存储库 您可以使用hg strip命令的一部分mq扩大 hg strip REV 这将删除该修订及其所有后代 在尝试此操作
  • 将用户控件属性绑定到自定义类

    在我的应用程序中我使用的是usercontrol称为 ChannelControls 我在主窗口上实例了 6 次 public partial class ChannelControls UserControl CMiXData cmixd
  • 根据 Haskell 列表中 n 的条件删除元素 n-1、n 和 n+1

    假设我有一个包含所有整数的列表2 to 20 2 20 我想使用函数过滤列表f x 或者它是一个谓词 我不太习惯 Haskell 编程中使用的所有术语 如果元素在位置n对于该函数等于 truef 我想删除位置上的元素n 1 n and n
  • char 的 a += b 运算符的实现与 a = a + b 相同吗? [复制]

    这个问题在这里已经有答案了 发现一个有趣的问题 以下代码运行时会产生不同的结果 char c a c a passed c c a Cannot implicitly convert type int to char An explicit
  • Discord.py - 使用命令更改前缀

    我想创建一个命令 管理员可以更改命令的前缀 例如 他们可以将其更改为 而不是使用 并且只有 才能工作 我可以设置只有管 理员才能使用该命令的权限 我环顾四周 通过文档和互联网 但没有找到任何东西 而且我不知道如何做到这一点 您应该使用com
  • 将片段添加到列表视图项中

    我想为列表视图中的每个项目都有一个片段 因为我想分离出一些逻辑 我为每个项目使用一个视图持有者 如果视图不存在 我将创建一个新片段并将其添加到容器中 holder mMyFragment new MyFragment mActivity t
  • SQL Server:如何检查字段是否具有“NULL”或“NOT NULL”约束?

    谁能告诉我是否有一种方法可以以编程方式确定 Micorosft SQL Server 数据库表字段是否具有 NULL 或 NOT NULL 约束 我需要这个 以便我可以部署一个可以安全重新运行的补丁 所以我正在寻找这样的东西 概念 伪代码
  • HiltAndroidApp/HiltViewModel IDE 中的“未解析的参考”,但它仍然可以构建而不会出现错误

    所以我按照以下步骤进行操作https developer android com training dependency injection hilt android https developer android com training
  • 将正斜杠替换为双引号内的双反斜杠

    我拼命地尝试替换正斜杠 用双反斜杠括在双引号 but a echo var sed s sed s g 不起作用 我不知道为什么 它总是只替换一个反斜杠而不是两个 When 是您想要替换为的正则表达式的一部分s 替代 命令sed 您可以在命
  • Java Regex - 使用单个美元捕获字符串,但当它有两个连续的美元时则不会

    我已经发布this https stackoverflow com questions 58821727 java regex java util regex search for dollar sign早点问 但这还没有结束 那里适用的所
  • 如何解决500内部服务器错误? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 当我使用 ajax 调用时 我收到 500 内部服务器错误 是什么导致了这个问题 如何解决呢 调试 修复和解决来自 Ajax 调用的服
  • 结构一字节对齐与架构的对齐要求冲突?

    我之前发过一个问题here https stackoverflow com questions 13881487 should i worry about the alignment during pointer casting comme
  • Android - 使用我的应用程序打开 Gmail 附件

    我需要使用我的应用程序打开具有自定义扩展名的文件 当文件位于我的 SD 卡中时 我可以使用 Intent 过滤器来执行此操作 如果文件作为 Gmail 附件发送 我还可以查看 下载 和 预览 按钮 但是 当我单击下载 预览按钮时 我收到消息
  • 删除某些内容后如何在 OS X Yosemite 上恢复 python?

    我想我之前是通过homebrew安装了python 这不是一个好主意 但我做到了 which python Library Frameworks Python framework Versions 2 7 bin python sudo r
  • 如何在标准 ML 中检查整数的以 2 为底的表示形式? [复制]

    这个问题在这里已经有答案了 我正在尝试在 SML 中实现重复平方算法 我希望它是尾递归的 目标是将所有 x k 相乘 其中 k 是 2 m 2 m 是 n 的二进制表示形式中的 1 例如 对于 x 25 计算 x 1 x 8 x 16 因为
  • 打印两次

    我出于教学目的编写了一个简单的程序 除了打印出名称和您选择的计算答案的部分之外 一切正常 if 语句似乎执行了两次 就好像它在前进之前向后退了一步 它将打印出 您想继续吗 但不会提示用户输入是 否 而是会再次打印出计算的答案 然后询问他们是
  • CodeDom:编译部分类

    我正在尝试编译文本文件中的代码以更改 WinForms 应用程序主窗体上的 TextBox 中的值 IE 将另一个带有方法的分部类添加到调用表单中 该表单有一个按钮 button1 和一个文本框 textBox1 文本文件中的代码是 thi
  • 错误:_handle onLaunch iOS 9 中的特定操作

    我在 iOS 9 上收到以下错误 UIApplication handleNonLaunchSpecificActions forScene withTransitionContext completion unhandled action