Keep iOS iPhone-only; give the iPad family to Mac Catalyst alone
Enabling Mac Catalyst pulled in the iPad device family, which made App Store Connect reject the iOS build with error 90474: an iPad-capable bundle must declare all four interface orientations to support iPad multitasking, and this app declared two. Catalyst genuinely needs the iPad idiom, but only for its own build. A per-SDK condition gives macOS family 2 while iOS keeps family 1 — verified to resolve correctly for both destinations, and Catalyst still builds with family 2 alone. The shipped iOS bundle is back to UIDeviceFamily [1], exactly as before the port started. The iPad orientation key is removed rather than extended. With an iPhone-only iOS build it is ignored, and macOS ignores orientation keys entirely, so it was dead configuration that only served to trip the validator. Supporting iPad properly is a deliberate piece of work — the layout is portrait-only with no size-class handling — and is better done on purpose than inherited as a side effect of the Mac port. Verified: builds for both Mac Catalyst and iOS Simulator; built bundle reports UIDeviceFamily [1] and portrait-only with no iPad orientation key. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -507,7 +507,6 @@
|
||||
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
|
||||
INFOPLIST_KEY_UIStatusBarStyle = UIStatusBarStyleDarkContent;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
@@ -525,7 +524,8 @@
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
"TARGETED_DEVICE_FAMILY[sdk=macosx*]" = 2;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -552,7 +552,6 @@
|
||||
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
|
||||
INFOPLIST_KEY_UIStatusBarStyle = UIStatusBarStyleDarkContent;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait;
|
||||
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationLandscapeRight UIInterfaceOrientationPortrait";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
@@ -570,7 +569,8 @@
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_UPCOMING_FEATURE_MEMBER_IMPORT_VISIBILITY = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
"TARGETED_DEVICE_FAMILY[sdk=macosx*]" = 2;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
@@ -604,7 +604,8 @@
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
"TARGETED_DEVICE_FAMILY[sdk=macosx*]" = 2;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -637,7 +638,8 @@
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
TARGETED_DEVICE_FAMILY = 1;
|
||||
"TARGETED_DEVICE_FAMILY[sdk=macosx*]" = 2;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user