2.3 KiB
2.3 KiB
iOS Release
This project uses the local Xcode/App Store Connect path, not EAS.
Current Native Settings
- Bundle ID:
com.soconnor.hotdog - Team ID:
V98X722US5 - Version:
1.0 - Build number:
1 - Scheme:
hotdog - Workspace:
ios/hotdog.xcworkspace
One-Time Setup
- Create the app record in App Store Connect using bundle ID
com.soconnor.hotdog. - Create an App Store Connect API key in App Store Connect > Users and Access > Integrations > App Store Connect API.
- Authenticate the App Store Connect CLI:
npx @onmyway133/asc-cli auth login
The CLI stores the private key in macOS Keychain by default. Do not commit AuthKey_*.p8.
For upload commands that use xcrun altool, also make the key available to Apple tooling. The usual local setup is:
mkdir -p ~/.appstoreconnect/private_keys
cp /path/to/AuthKey_YOURKEYID.p8 ~/.appstoreconnect/private_keys/
export ASC_KEY_ID=YOURKEYID
export ASC_ISSUER_ID=YOUR-ISSUER-UUID
Build And Upload
Run a static check first:
npm run typecheck
Archive a release build:
npm run ios:archive
Export an App Store Connect IPA:
npm run ios:export
The export uses config/ExportOptions.AppStore.plist.
Upload the IPA:
npm run ios:upload
The uploaded build will appear in App Store Connect after Apple finishes processing it.
App Store Connect CLI
Use the asc script for App Store Connect management:
npm run asc -- auth status --validate
npm run asc -- apps list
npm run asc -- builds list --app-id APP_ID
npm run asc -- testflight groups list --app-id APP_ID
Common release flow after a build is processed:
npm run asc -- apps list
npm run asc -- versions list --app-id APP_ID
npm run asc -- builds list --app-id APP_ID
npm run asc -- versions attach-build --version-id VERSION_ID --build-id BUILD_ID
Submit for review only after metadata, screenshots, pricing, privacy details, and review details are complete:
npm run asc -- submit create --app-id APP_ID --version-id VERSION_ID --platform IOS
Notes
- Use TestFlight first, even for a small app.
- Increment the build number before each upload.
- Keep
.p8,.p12, provisioning profiles, and local env files out of git. - If Xcode signing fails, open
ios/hotdog.xcworkspace, select thehotdogtarget, and confirm the Apple team/signing settings.