Skip to content

fix: split iPhone/iPad orientations for App Store validation; set version 1.0(1) - #1

Open
seongilp wants to merge 3 commits into
mainfrom
fix/appstore-orientations-version
Open

fix: split iPhone/iPad orientations for App Store validation; set version 1.0(1)#1
seongilp wants to merge 3 commits into
mainfrom
fix/appstore-orientations-version

Conversation

@seongilp

Copy link
Copy Markdown
Contributor

Summary

Fixes the two project.yml issues uncovered while shipping the first TestFlight build (1.0 (1), now VALID on App Store Connect).

  • iPad orientations — As a universal app (TARGETED_DEVICE_FAMILY "1,2"), App Store validation rejected the upload (error 90474) because iPad multitasking requires all four orientations. Split the single UISupportedInterfaceOrientations key into:
    • _iPhone: Portrait, LandscapeLeft, LandscapeRight (no upside-down — standard for phones)
    • _iPad: all four, incl. PortraitUpsideDown
  • Version numbers — Added MARKETING_VERSION 1.0 / CURRENT_PROJECT_VERSION 1 (were silently defaulting).

Test plan

  • xcodegen generate succeeds
  • xcodebuild archive succeeds
  • xcodebuild -exportArchive (app-store-connect) uploads without the 90474 rejection
  • Build 1.0 (1) reaches VALID state on App Store Connect / TestFlight
  • Smoke-test orientations on a physical iPad

Notes

Deploy also required a non-repo workaround: run -exportArchive with a system-only PATH so Apple's openrsync is used on both ends (Homebrew rsync 3.4.4 in PATH otherwise causes a generic Copy failed at packaging). Captured in project memory.

seongilp added 3 commits June 14, 2026 14:56
A rapid double-tap on a video could spawn two playerItem loads; both
passed the guards and each set player + a periodic time observer. The
second overwrote the first's references, orphaning the first player's
observer (never removeTimeObserver'd) — a leak, plus possible double
audio. Re-check player == nil after the await so the late load bails.
…sion 1.0(1)

- iPad requires all four orientations (incl. PortraitUpsideDown) or App Store
  validation rejects a universal app (error 90474). Split the single
  UISupportedInterfaceOrientations key into _iPhone (3) and _iPad (4).
- Add MARKETING_VERSION 1.0 / CURRENT_PROJECT_VERSION 1 (were defaulting).
…ance prompt

App uses only standard HTTPS/system encryption, which is exempt. Declaring
this in Info.plist removes the 'Missing Compliance' prompt on every
TestFlight/App Store upload.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant