Skip to content

Release/appstore submit#3

Merged
jungseok-corine merged 8 commits into
feat/week1-foundationsfrom
release/appstore-submit
Oct 20, 2025
Merged

Release/appstore submit#3
jungseok-corine merged 8 commits into
feat/week1-foundationsfrom
release/appstore-submit

Conversation

@jungseok-corine

@jungseok-corine jungseok-corine commented Oct 20, 2025

Copy link
Copy Markdown
Owner

Summary

  • Add Korean App Store metadata (ko locale) with description, keywords,
    promotional text, release notes
  • Fix locale directory naming: move from ko-KRko per Apple's
    requirements
  • Add 8 App Store screenshots for iPhone 6.5" display (1242 x 2688)
  • Update Fastfile with comprehensive release automation:
    • release lane: full build + upload + submit workflow
    • submit_only lane: submit existing build without rebuilding
    • Export compliance verification (ITSAppUsesNonExemptEncryption = NO)
  • Update LaunchScreen.storyboard and Info.plist for App Store readiness
  • Add comprehensive Fastlane guide documentation (Docs/Fastlane_Guide.md)
  • Share Xcode scheme for CI/CD compatibility
  • Update README with Fastlane usage instructions

Screenshots

8 App Store screenshots prepared:

  • Launch screen with branding
  • Workout log list with badges
  • Session detail with exercise picker
  • Create exercise flow
  • Trends chart visualization

Technical Details

  • Locale Fix: Renamed fastlane/metadata/ko-KR/ko/ (Apple uses
    ko for Korean, not ko-KR)
  • Removed Files: name.txt and subtitle.txt from Korean locale
    (caused app name conflicts)
  • Export Compliance: Verified ITSAppUsesNonExemptEncryption = NO in
    Info.plist
  • Shared Scheme: Xcode scheme now shared for Fastlane automation

Automation

Two Fastlane lanes available:

  1. bundle exec fastlane release - Full workflow (build → upload →
    submit)
  2. bundle exec fastlane submit_only - Submit existing build (faster
    for resubmissions)

App Store Submission Status

✅ Build 1.1 (1) successfully submitted for review
📅 Review typically takes 24-48 hours
🎯 Manual release configured (automatic_release: false)

Checks

  • ✅ Build passes (iPhone 16 Simulator, iOS 18.5)
  • ⚠️ Unit tests skipped (deployment target mismatch - non-blocking)
  • ✅ Export compliance: ITSAppUsesNonExemptEncryption = NO
  • ✅ Korean metadata complete
  • ✅ 8 screenshots ready
  • ✅ Fastlane automation tested and working

- Add .ruby-version (3.3.0) for consistent Ruby environment
- Add Gemfile with fastlane gem
- Generate Gemfile.lock with all dependencies

This sets up the Ruby/Bundler foundation for Fastlane automation.
- Add Fastfile with lanes for tests, build, beta (TestFlight), and release
- Add Appfile with app identifier (com.Ben.WorkOut-Log) and Apple ID
- Configure App Store Connect API key authentication for CI
- Implement automatic signing via Xcode

Lanes:
- tests: Run unit and UI tests on iPhone 16 simulator
- bump_build: Increment CFBundleVersion and commit
- build: Create App Store archive with automatic signing
- beta: Build + test + upload to TestFlight
- release: Upload to App Store Connect (manual review)

All lanes use project-based configuration (no workspace required).
…light deployment

- Add CI workflow that runs on PRs to main and feat/week1-foundations
- Add beta deployment workflow that triggers on version tags (v*)
- Configure macos-14 runner with Xcode 16
- Use ruby/setup-ruby@v1 with bundler-cache for faster builds
- Pass App Store Connect API credentials via GitHub Secrets

Workflows:
- test job: Runs 'bundle exec fastlane tests' on every PR
- beta job: Runs 'bundle exec fastlane beta' on tag pushes (v*)

Required secrets: ASC_KEY_ID, ASC_ISSUER_ID, ASC_KEY_CONTENT
- Ignore Fastlane reports, screenshots, and test output
- Ignore build artifacts (*.ipa, *.dSYM.zip, DerivedData/)
- Ignore Ruby/Bundler vendor directory
- Include standard Xcode ignores (xcuserdata, build/, etc.)
- Add macOS .DS_Store to ignore list
- Add 'Continuous Integration & Deployment' section before Contributing
- Document all Fastlane lanes (tests, bump_build, build, beta, release)
- Explain GitHub Actions workflows (PR testing, tag-based TestFlight deployment)
- Add instructions for obtaining App Store Connect API key
- Include example commands for triggering TestFlight uploads via tags
- List required GitHub Secrets and their purpose
…bmission

- Add Korean metadata files (description, keywords, promotional text, release notes)
- Add URLs: support, marketing, privacy policy
- Update Fastfile release lane to submit for App Store review
- Configure automatic_release: false for manual release control
- Add export compliance verification before build
- Skip screenshots for now (placeholders created)

Refs: App Store submission automation
- Add iPhone 6.5" screenshots (1242x2688)
- Enable screenshot upload in Fastfile (skip_screenshots: false)
- Screenshots: launch, worklog badges, session detail, exercise picker, trends

Ready for App Store submission.
…ne automation

- Add Korean metadata (ko locale) with description, keywords, promotional text, release notes
- Move metadata from ko-KR to ko per Apple's locale requirements
- Add 8 App Store screenshots (iPhone 6.5" display)
- Update Fastfile with release and submit_only lanes for automated submission
- Add export compliance verification (ITSAppUsesNonExemptEncryption = NO)
- Update LaunchScreen.storyboard and Info.plist for App Store readiness
- Add comprehensive Fastlane guide documentation
- Share Xcode scheme for CI/CD compatibility
- Update README with Fastlane usage instructions
@jungseok-corine
jungseok-corine merged commit 532a910 into feat/week1-foundations Oct 20, 2025
1 of 2 checks passed
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