带有子窗格的ios13设置包在真实设备上使Settings.app崩溃

时间:2019-08-13 16:52:18

标签: settings.bundle ios13

使用运行iOS 13 beta 6的iPad mini4(A1538),并使用XCode 11 beta 5 ... 使用XCode 11中的Single View App模板创建一个新的iOS项目。添加一个Settings.bundle,其根目录仅包含两个项目:

  1. 儿童窗格
  2. 文本字段

创建一个子窗格plist文件,将其添加到Settings.bundle中,然后按照其正常的Apple Settings Bundle指南,通过其Filename属性将其链接到根子窗格。对于子窗格,创建两个项目:

  1. 组说明符(似乎是必需的,否则子窗格页面中什么都不会显示)
  2. 文本字段

文本字段条目本身的名称,默认值等并不重要,请选择任何内容。生成应用程序并运行它。在模拟器上,Settings.app将按预期运行-您可以导航到子窗格并查看其上的文本字段并与之交互。当您选择子窗格控件导航到它时,在真实设备上运行它会导致Settings.app崩溃。如果您从子窗格plist中删除所有控件(在我们的示例中是单个文本字段条目),则它不会崩溃。添加除组说明符以外的所有条目似乎会触发崩溃。在13之前的iOS版本上可以正常工作。

调试与发行版本无关紧要。似乎是一个新的iOS 13错误。有人可以重新创建并确认吗?列出了步骤,但必要时可以提供示例项目-我故意使用默认模板,进行了最小的更改以证明其不是WOMM类型问题

3 个答案:

答案 0 :(得分:5)

NB:a导致iOS 13中的设置崩溃的单独错误与在“ PSTextFieldSpecifier”类型项中使用“ Number”值类型有关。

答案 1 :(得分:1)

我通过将表视图样式更改为“子窗格”上的“组样式”来解决此崩溃问题。您只需要添加1个类型为PSGroupSpecifier的项目即可。

Child Pane Group Table Style

答案 2 :(得分:0)

有类似的问题。根据崩溃日志,该异常是由SwiftUI引起的。

但是,iOS 13.3更新已修复它。