app-store-deployment について
iOS App Store と Google Play にアプリを公開するモバイル開発者向けの手順ガイドです。ビルド、署名、バージョン管理、公開前の確認事項を扱います。
主な機能
- 01iOS のアーカイブとアップロード手順
- 02Android リリースバンドルのビルド
- 03バージョン番号の管理
- 04公開前チェックリスト
- 05GitHub Actions のデプロイ例
活用シーン
- 01iOS アプリの公開準備
- 02Android リリースバンドルの作成
- 03アプリストア公開要件の確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ secondsky/ claude-skills --skill app-store-deploymentインストール後、Claude Code で/app-store-deploymentを入力して読み込まれたか確認します。
詳細
App Store へのデプロイ
適切な手順で、iOS App Store と Google Play にモバイルアプリを公開します。
iOS のデプロイ
ビルドとアーカイブ
# Build archive
xcodebuild -workspace App.xcworkspace \
-scheme App \
-sdk iphoneos \
-configuration Release \
-archivePath build/App.xcarchive \
archive
# Export IPA
xcodebuild -exportArchive \
-archivePath build/App.xcarchive \
-exportOptionsPlist ExportOptions.plist \
-exportPath build/
App Store Connect へのアップロード
xcrun altool --upload-app \
--type ios \
--file build/App.ipa \
--username "$APPLE_ID" \
--password "$APP_SPECIFIC_PASSWORD"
Android のデプロイ
リリース APK/バンドルのビルド
# Generate keystore (once)
keytool -genkey -v -keystore release.keystore \
-alias app -keyalg RSA -keysize 2048 -validity 10000
# Build release bundle
./gradlew bundleRelease
gradle.properties
RELEASE_STORE_FILE=release.keystore
RELEASE_KEY_ALIAS=app
RELEASE_STORE_PASSWORD=****
RELEASE_KEY_PASSWORD=****
バージョン管理
{
"version": "1.2.3",
"ios": { "buildNumber": "45" },
"android": { "versionCode": 45 }
}
デプロイ前チェックリスト
- すべてのテストに合格している(カバレッジ 80% 超)
- すべてのサイズのアプリアイコン
- ストア掲載用のスクリーンショット
- プライバシーポリシーの URL が設定されている
- 権限の必要性が説明されている
- サポート対象の最小 OS バージョンでテスト済み
- リリースノートを準備済み
CI/CD(GitHub Actions)
on:
push:
tags: ['v*']
jobs:
deploy-ios:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Set up environment
run: |
# Accept Xcode license if needed
sudo xcodebuild -license accept || true
- name: Build archive
run: |
xcodebuild -workspace App.xcworkspace \
-scheme App \
-sdk iphoneos \
-configuration Release \
-archivePath build/App.xcarchive \
archive
- name: Export IPA
run: |
xcodebuild -exportArchive \
-archivePath build/App.xcarchive \
-exportOptionsPlist ExportOptions.plist \
-exportPath build/
- name: Upload to App Store Connect
env:
APPLE_ID: ${{ secrets.APPLE_ID }}
APP_SPECIFIC_PASSWORD: ${{ secrets.APP_SPECIFIC_PASSWORD }}
run: |
xcrun altool --upload-app \
--type ios \
--file build/App.ipa \
--username "$APPLE_ID" \
--password "$APP_SPECIFIC_PASSWORD"
deploy-android:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: ./gradlew bundleRelease
- uses: r0adkll/upload-google-play@v1
ベストプラクティス
- CI/CD でデプロイを自動化する
- 実機でテストする
- 署名関連の情報は個別に安全に管理する
- リリース後にクラッシュレポートを監視する
コメント
Markdown 対応