SwiftUIベースのシンプルなiOSアプリケーションテンプレートです。GitHub Actionsを使用した自動ビルドとリリース機能を備えています。
- SwiftUI ベースの最新のUI実装
- iOS 15.0以降をサポート
- GitHub Actionsによる自動ビルド
- タグプッシュ時の自動リリース生成
MyiOSApp/
├── MyiOSApp/
│ ├── MyiOSAppApp.swift # アプリケーションのエントリーポイント
│ ├── ContentView.swift # メインビュー
│ ├── Assets.xcassets/ # アセットカタログ
│ └── Info.plist # アプリケーション設定
└── MyiOSApp.xcodeproj/ # Xcodeプロジェクト
- Xcode 15.0以降
- iOS 15.0以降
- macOS(ローカルビルドの場合)
- リポジトリをクローン
git clone <repository-url>
cd dev-ios- Xcodeでプロジェクトを開く
open MyiOSApp/MyiOSApp.xcodeproj- ビルドして実行
- Xcodeでスキーム "MyiOSApp" を選択
- シミュレータまたは実機を選択
- ⌘R でビルド&実行
main または develop ブランチへのプッシュ、および main へのプルリクエストで自動的にビルドが実行されます。
ワークフロー: .github/workflows/build.yml
バージョンタグ(v*.*.* 形式)をプッシュすると、自動的にリリースが作成されます。
# 例: バージョン 1.0.0 のリリースを作成
git tag v1.0.0
git push origin v1.0.0ワークフロー: .github/workflows/release.yml
リリースには以下が含まれます:
- ビルドされたIPAファイル
- バージョン情報
- リリースノート
注意: このテンプレートは署名なしでビルドされます。App Storeへの配信には、適切なコード署名の設定が必要です。
App Storeやアドホック配布を行う場合は、以下の設定が必要です:
-
Apple Developer アカウントの設定
-
証明書とプロビジョニングプロファイルの作成
-
GitHub Secretsへの証明書情報の追加
CERTIFICATE_P12: 証明書ファイル(Base64エンコード)CERTIFICATE_PASSWORD: 証明書のパスワードPROVISIONING_PROFILE: プロビジョニングプロファイル(Base64エンコード)
-
ワークフローファイルでの署名設定の有効化
MyiOSApp.xcodeproj/project.pbxprojでPRODUCT_NAMEを変更- ディレクトリ名とファイル名を変更
- Bundle Identifierを変更(
PRODUCT_BUNDLE_IDENTIFIER)
MyiOSApp.xcodeproj/project.pbxproj の PRODUCT_BUNDLE_IDENTIFIER を変更してください。
デフォルト: com.example.MyiOSApp
MITライセンス
プルリクエストを歓迎します。大きな変更の場合は、まずissueを開いて変更内容を議論してください。