株式会社オブライト
Mobile Development2026-03-04

Capacitor iOS App Development & Deployment Guide | App Store Publishing

Complete guide from Capacitor iOS app development to App Store publishing. Learn Xcode configuration, certificate management, Push notification setup, Universal Links, and App Clips. Practical deployment strategies from Oflight Inc.


Xcode Project Structure and Configuration

The iOS project generated by Capacitor is managed directly in Xcode. Adding the iOS platform with `npx cap add ios` generates an Xcode project in the `ios/App/` directory. At Oflight Inc. in Shinagawa-ku, we recommend Xcode 15 or later, leveraging the latest Swift features and iOS SDK. Open App.xcodeproj in the project navigator and review settings like General, Signing & Capabilities, and Build Settings. Development teams in Minato-ku appropriately set Display Name, Bundle Identifier, and Version, maintaining consistency with App Store Connect. Set the minimum supported iOS version in Deployment Target. Projects in Shibuya-ku target iOS 14 and later, balancing latest features with user coverage. App Icons and Launch Screens are managed in Assets.xcassets. Development teams in Setagaya-ku prepared all icon sizes and adaptive Launch Screens, achieving display optimization for each device. Info.plist includes permission description text for camera, location, photo library, etc. Financial apps in Meguro-ku described permissions in user-friendly Japanese, improving approval rates. At Oflight in Shinagawa-ku, we support Xcode configuration optimization.

Managing Certificates and Provisioning Profiles

Building and deploying iOS apps requires Apple Developer Program certificates and provisioning profiles. For development, use Development certificates and Development provisioning profiles. Development teams in Ota-ku use Xcode's automatic signing feature, easily obtaining development certificates for all team members. For distribution, Distribution certificates and App Store/Ad Hoc provisioning profiles are required. Projects in Minato-ku use Fastlane Match to share certificates via Git, dramatically improving team development efficiency. Using App Store Connect API keys facilitates automated builds in CI/CD environments. Development teams in Shibuya-ku built mechanisms to automatically upload to TestFlight on tag push using API keys in GitHub Actions. Certificate expiration management is also important. Projects in Setagaya-ku implemented scripts to send expiration notifications to Slack, preventing sudden build failures. Choosing between Xcode automatic signing and manual signing depends on team size and operational policy. Large teams in Meguro-ku achieve strict certificate management combining manual signing with Fastlane Match. At Oflight in Shinagawa-ku, we provide certificate management best practices.

Building in Xcode and Simulator Testing

Before building in Xcode, execute web app build and `npx cap sync`. Development teams in Minato-ku integrated this procedure into npm scripts, enabling batch execution with `npm run build:ios`. Select a scheme in Xcode, choose simulator or real device, and click the Run button. Projects in Shibuya-ku test on multiple iPhone models and iPad simulators to verify layout compatibility. Leverage Xcode debugging features to set breakpoints in Swift code. Development teams in Setagaya-ku conducted detailed native layer debugging using the LLDB debugger. For WebView debugging, connect Safari Web Inspector. Projects in Meguro-ku connect to simulator WebView from Safari's development menu to check JavaScript console logs and network requests. For performance measurement, use Xcode's Instruments tool. Large-scale apps in Ota-ku identified CPU usage and memory leaks using Time Profiler and Allocations, implementing optimizations. At Oflight in Shinagawa-ku, we support development workflows leveraging Xcode.

Push Notification Setup and APNs Integration

Implementing push notifications in Capacitor apps requires the @capacitor/push-notifications plugin and APNs (Apple Push Notification service) configuration. First, generate APNs certificates or APNs authentication keys in Apple Developer Portal. Development teams in Shibuya-ku adopted the newer APNs authentication key (.p8 file), achieving operation without expiration dates. Add Push Notifications capability in Xcode Signing & Capabilities. Projects in Minato-ku also enabled Remote notifications in Background Modes, implementing background notifications. After plugin installation, implement register, addListener('pushNotificationReceived'), and addListener('pushNotificationActionPerformed') in JavaScript. EC apps in Setagaya-ku delivered product arrival notifications via push, increasing user engagement by 30%. On the server side, send HTTP/2 requests to APNs. Development teams in Meguro-ku send push notifications using Node.js apn library. Projects in Ota-ku sent to APNs via Firebase Cloud Messaging (FCM), centrally managing Android/iOS notifications. At Oflight in Shinagawa-ku, we support all phases of push notification implementation.

Implementing Universal Links and App Links

Implementing Universal Links causes the app to open when website URLs are tapped. First, enable Associated Domains capability in Apple Developer Portal. Development teams in Minato-ku registered domains in applinks:example.com format. Place .well-known/apple-app-site-association file on web server to declare association with app. Projects in Shibuya-ku configured multiple paths to be handled by the app, achieving flexible deep linking. Add Associated Domains capability in Xcode and specify domains. EC sites in Setagaya-ku opened apps directly from product detail page URLs, improving conversion rates. In Capacitor apps, receive URLs with @capacitor/app plugin's appUrlOpen listener. Development teams in Meguro-ku implemented processing to parse received URLs and navigate to appropriate screens. Media apps in Ota-ku navigated directly to in-app article details from article URLs, improving user experience. For debugging, tap Universal Links from Safari or test with xcodebuild. At Oflight in Shinagawa-ku, we comprehensively support Universal Links implementation.

App Clips Development and Distribution

App Clips provide a portion of app functionality as a lightweight version, available from iOS 14 onward. Capacitor apps can also support this by creating App Clip Targets. Restaurant reservation apps in Minato-ku implemented App Clips that instantly display reservation screens when QR codes are scanned at stores. Add App Clip from File > New > Target in Xcode. Development teams in Shibuya-ku built lightweight App Clips under 10MB while sharing code with main apps. App Clips can be implemented in SwiftUI or UIKit, and embedding Capacitor WebView is also possible. Event apps in Setagaya-ku provided ticket purchase functionality as App Clips, encouraging use by users without app installations. Configure App Clip Experience in App Store Connect and associate with specific URLs or NFC tags. Projects in Meguro-ku set different URLs for each store, achieving location-based App Clip display. Retail apps in Ota-ku displayed product details when product tag NFC is scanned, enabling immediate purchase. At Oflight in Shinagawa-ku, we support App Clips from planning to implementation.

App Registration in App Store Connect

Publishing apps to the App Store requires app registration in App Store Connect. First, Apple Developer Program membership is necessary. Startups in Shibuya-ku obtained individual accounts at $99/year or organizational accounts at $299/year. Log in to App Store Connect and create new apps from My Apps > + button. Development teams in Minato-ku accurately entered Bundle ID to match Xcode projects. Set app name, primary language, Bundle ID, and SKU. Projects in Setagaya-ku registered metadata in both Japanese and English, with global deployment in view. In the App Information section, enter category, subcategory, and content rights information. Educational apps in Meguro-ku set appropriate age restrictions and educational categories. In Pricing and Availability, set free/paid and distribution countries. B2B apps in Ota-ku enabled Volume Purchase Program (VPP) to support bulk corporate purchases. In the App Privacy section, describe privacy policy URL and data collection information. At Oflight in Shinagawa-ku, we support App Store Connect registration.

Beta Testing with TestFlight

TestFlight is Apple's official service for distributing apps to beta testers before App Store publication. Create Archives with Xcode or Fastlane and upload to App Store Connect. Development teams in Minato-ku automated `xcodebuild archive` and altool/xcodeupload commands, delivering to TestFlight in CI/CD pipelines. After upload, builds are processed in App Store Connect's TestFlight section. Projects in Shibuya-ku utilized the few minutes until processing completion to prepare release notes. Two types can be invited: internal and external testers. Development teams in Setagaya-ku identified initial bugs with 25 internal testers and conducted production-equivalent testing with 10,000 external testers. Testers receive installation links via TestFlight app. B2C apps in Meguro-ku invited enthusiastic users as external testers, leveraging feedback for product improvement. Projects in Ota-ku leveraged TestFlight's crash reporting functionality to improve stability before release. At Oflight in Shinagawa-ku, we support TestFlight distribution and beta testing strategies.

App Store Review Preparation and Metadata Configuration

Smoothly passing App Store review requires apps and metadata compliant with Apple guidelines. Read App Store Review Guidelines thoroughly and verify prohibited items. Development teams in Shibuya-ku implemented review countermeasures in advance, referencing past rejection cases. Prepare app screenshots for each device size (6.7 inch, 6.5 inch, etc.). Design teams in Minato-ku created screenshot templates in Figma for efficient generation. Adding app preview videos (optional) improves download rates. Game apps in Setagaya-ku introduced gameplay in 30-second preview videos, increasing conversion by 20%. Describe description text, keywords, support URL, and privacy policy URL. SaaS apps in Meguro-ku increased search traffic through SEO-conscious keyword selection. In the App Store Review Information section, describe test accounts and special notes. Membership apps in Ota-ku provided test accounts for review, achieving smooth review. At Oflight in Shinagawa-ku, we support review preparation and metadata optimization.

Production Release to App Store and Post-Launch Operations

After sufficient TestFlight testing, submit for App Store review. Select the build for review in App Store Connect and click "Submit for Review". Development teams in Minato-ku planned release schedules considering that review typically takes 1-3 days. If rejected during review, check reasons in Resolution Center, fix, and resubmit. Projects in Shibuya-ku corrected guideline violations and were approved on the second review. After approval, choose manual or automatic release. Marketing teams in Setagaya-ku selected manual release and published on App Store simultaneously with press releases. After publication, monitor downloads, crash rates, and user retention in App Analytics. Product teams in Meguro-ku check KPIs weekly and plan improvement measures. Update versions are built with new version numbers and submitted for review similarly. Development teams in Ota-ku established bi-weekly release cycles, achieving continuous feature improvement. At Oflight in Shinagawa-ku, we comprehensively support release strategies and post-launch operations.

Deployment Automation with Fastlane

Fastlane is a tool for automating iOS app building, signing, and distribution. Install with `gem install fastlane` and setup with `fastlane init`. Development teams in Shibuya-ku defined lanes in Fastfile, codifying complex deployment flows. Manage certificates in Git repositories with the match command. Projects in Minato-ku safely share certificates among team members using Fastlane Match. Build apps with gym command, generating .ipa files. Development teams in Setagaya-ku specified ExportMethod and ProvisioningProfile in gym settings, achieving automated builds. Upload to TestFlight with pilot command and submit to App Store with deliver command. CI/CD environments in Meguro-ku execute Fastlane in GitHub Actions, automatically deploying on tag push. Screenshots can be automatically generated with screengrab command. Localization projects in Ota-ku automatically generated screenshots for 4 languages: Japanese, English, Chinese, and Korean. At Oflight in Shinagawa-ku, we support deployment automation leveraging Fastlane.

Oflight's iOS Deployment Support Services

Oflight Inc., based in Shinagawa-ku, Tokyo, provides end-to-end support from Capacitor iOS app development to App Store publication. We have handled numerous iOS app deployment requests from companies throughout Tokyo including Minato-ku, Shibuya-ku, Setagaya-ku, Meguro-ku, and Ota-ku. We provide comprehensive support including Xcode configuration optimization, certificate management, push notification implementation, Universal Links setup, App Clips development, App Store Connect registration, TestFlight distribution, review preparation, production release, and Fastlane automation. We also handle Apple Developer Program registration and support for review rejections, providing peace of mind even for first-time iOS app releases. We support post-launch operations including continuous update releases, App Analytics analysis, and ASO (App Store Optimization). Even development teams with only Electron or web app experience can smoothly release iOS apps with Oflight's support. If you are considering App Store publication for Capacitor iOS apps, please contact Oflight in Shinagawa-ku. Our experienced team will reliably deliver your app to the App Store.

Feel free to contact us

Contact Us