13

Using an iPad mini4 (A1538), running iOS 13 beta 6, using XCode 11 beta 5... Create a new iOS project using the Single View App template in XCode 11. Add a Settings.bundle with the root containing only two items:

  1. Child Pane
  2. Text Field

Create a child pane plist file, add it to the Settings.bundle and link it to the root Child Pane entry via its Filename property, per normal Apple Settings Bundle guidelines. For the child pane create two items:

  1. Group Specifier (seems to be required else nothing shows up in child pane page at all)
  2. Text Field

The names, default values etc of the text field entries themselves aren't important, pick anything. Build the app and run it. On the simulator the Settings.app will work as expected - you can navigate to the child pane and see and interact with the text field on it. Running it on a real device will result in the Settings.app crashing when you select the child pane control to navigate to it. If you remove all controls, in our case the single text field entry, from the child pane plist it will not crash. Adding any entries at all other than the Group Specifier seems to trigger the crash. This works fine on iOS versions prior to 13.

Debug vs release build doesn't matter. Appears to be a new iOS 13 bug. Can someone recreate and confirm? Steps are listed but a sample project can be provided if necessary - I purposefully used the default template with minimal changes to prove its not a WOMM type issue

stonedauwg
  • 1,328
  • 1
  • 14
  • 35
  • 2
    FYI submitted bug to Apple as well – stonedauwg Aug 14 '19 at 16:27
  • I have the same problem, still not solved in beta 7. I have also submitted a bug report. Beta 5 already had weird issues with Settings,bundle, as in not showing all settings, but this is even worse. – Ely Aug 17 '19 at 13:05
  • I too have seen other Settings issues that also cause crashes. It's like they overhauled Settings.app for the worse – stonedauwg Aug 17 '19 at 19:18
  • Still crashing in beta 8. – Ely Aug 21 '19 at 19:19
  • 1
    Looking at the crash logs it seems they now use SwiftUI to display the content of a Settings.bundle. So they are re-implementing a lot of stuff, with the risk of 'forgetting' some lesser used features. – Ely Aug 22 '19 at 07:19
  • Anyone found any fixes for this yet? – C0D3 Sep 16 '19 at 15:45
  • Any progress on this issue yet? I posted [my own question](https://stackoverflow.com/q/58044107/8289095) before I realised this had already been asked. – Chris Sep 22 '19 at 18:38
  • 1
    This seems to have been resolved on my devices running 13.1 beta. – huwr Sep 24 '19 at 00:34
  • 2
    bug still present on 13.1 beta 4 – ecume des jours Sep 24 '19 at 06:15
  • 1
    bug still present in 13.1 released version :( – Sashah Sep 24 '19 at 21:50
  • @Sashah I just installed the release version of 13.1 and it works fine. Are the plists formatted as settings plists? – Chris Sep 25 '19 at 07:04
  • 1
    @Chris thank you, I mistakenly thought that this was the same as my related issue. In my issue the child pane is two levels deep and it crashes on back button press. I finally found someone else with my exact crash: https://github.com/mono0926/LicensePlist/issues/105 – Sashah Sep 25 '19 at 14:16

3 Answers3

5

NB:a A separate bug leading to a settings crash in iOS 13 is related to using the value type "Number" in an item of type "PSTextFieldSpecifier".

ecume des jours
  • 2,493
  • 1
  • 19
  • 15
  • We had a crash because we were writing a default value as NSInteger to PSTextFieldSpecifier, before converting to NSString. This was working until iOS 13. – kikeenrique Sep 30 '19 at 13:08
  • getting the same issue from comment above – gom1 Oct 01 '19 at 01:41
  • 1
    This was the cause of my crash. I stored an integer into the preferences that was represented using a text field in settings. Doing manual string <-> int conversion fixed it. – freespace Oct 11 '19 at 00:29
1

I resolve this crash issue by change table view style to Group style on Child Pane. You just need to add 1 item with type is PSGroupSpecifier.

Child Pane Group Table Style

Tony Pham
  • 393
  • 1
  • 3
  • 9
0

Had a similar issue. According to crashlogs the exception was caused by SwiftUI.

However, iOS 13.3 update has fixed it.