Apps rejected by App Store Connect if they contain Objective-C dictionaries defined with @{ @"key": @"value" } notation

I have been having trouble submitting my app to App Store Connect after building it with Xcode 13.

I figured out that if a project contains this Objective-C code, App Store Connect will reject the app claiming it to use NSConstantDictionary as a private API:

NSDictionary *myDictionary = @{@"a":@"b", @"c":@"d" };
NSLog(@"myDictionary: %@", myDictionary);

I suspect the same issue exists for NSArray, at least when written with @[@"a", @"b"] notation.

I filed FB9188387 regarding this. It seems like a pretty big problem. The FB includes a very simple sample project that gets rejected with the error above. The same project archived and submitted by Xcode 12.5 is accepted. The FB also contains a copy of this sample project with the two lines above commented out. That is accepted and processed by App Store Connect.

John

Apps rejected by App Store Connect if they contain Objective-C dictionaries defined with @{ @"key": @"value" } notation
 
 
Q