1. ホーム
  2. ios

[解決済み] App Storeのリリース時にインクリメントされなければならないiOSアプリのバージョン/ビルド番号はどれですか?

2022-06-03 05:26:23

質問

iOSアプリのバージョン/ビルドフィールドは以下の通りです。

  • バージョン" CFBundleShortVersionString (String - iOS, OS X) は、アプリのリリースされた反復を識別する、バンドルのリリースバージョン番号を指定します。リリースバージョン番号は、ピリオドで区切られた 3 つの整数からなる文字列です。

  • "ビルド"。 CFBundleVersion (String - iOS, OS X) は、バンドルのイテレーション (リリースまたは未リリース) を識別する、バンドルのビルドバージョン番号を指定します。ビルドバージョン番号は、ピリオドで区切られた 3 つの負でない整数からなる文字列で、最初の整数が 0 より大きいものである必要があります。文字列には、数字 (0-9) とピリオド (.) のみを含める必要があります。先頭のゼロは切り捨てられ、無視されます(つまり、1.02.3 は 1.2.3 と同じ意味です)。このキーはローカライズできません。

  • iTunes Connect バージョン番号" : iTunes Connectでアプリの新しいバージョンを作成する際に指定するバージョン番号です。

質問なのですが

どのバージョン/ビルド番号が インクリメントされる必要があります。 アプリの新しいバージョンが iTunes Connect にアップロードされたり、App Store にリリースされた場合、どのバージョン/ビルド番号がインクリメントされる必要がありますか?

"version"のどちらでもかまいません。 CFBundleShortVersionString または "ビルド" CFBundleVersion は、アプリの更新の間、同じままですか?

Apple のソースや、無効なバージョン/ビルド番号をアップロードした際に iTunesConnect が表示する正確なエラーメッセージがあれば、さらにポイントが加算されます。


Android / Google Play の注意事項。

この質問は、Google Play ストアでの Android アプリの公開バージョンについて、以下のように説明されています。 ではなく であり、インクリメントする必要があります。 まさか を検証する必要があります。そのため android:versionName は、リリース間で同じままであったり、アップグレードやダウングレードであったり、有効なバージョン番号のように見えるものでなく、任意のランダムな文字列であったりすることがあります。

android:versionName - アプリケーションコードのリリースバージョンを表す文字列値で、ユーザーに表示されるべきものです。

この値は文字列なので、アプリケーションのバージョンを記述するために <major>.<minor>.<point> の文字列で指定します。 または他の型として の絶対または相対バージョン識別子です。

AndroidにおけるversionNameとversionNumberの違いについて

一方 android:versionCode はリリース時に増加する整数であることが強制されます。


Apple のドキュメント

で述べたように で述べたように、新しく受け入れられた回答 にあるように、Apple は最近、バージョンとビルド番号のスキームを詳述したテクニカル ノートを公開しました。

Apple Technical Note TN2420 - バージョン番号とビルド番号

どのように解決するのですか?

Apple テクニカル ノート TN2420、バージョン番号、およびビルド番号

概要

  • ペア( Version , Build number ) は一意でなければならない。
    • シーケンスは有効です。(1.0.1, 12) -> (1.0.1, 13) -> (1.0.2, 13) -> (1.0.2, 14) ・・・・・。
  • Version ( CFBundleShortVersionString ) は、昇順の連続した順序でなければなりません。
  • Build number ( CFBundleVersion ) は昇順の連続した順序でなければなりません。

バージョン番号とビルド番号のチェックリスト

新しいビルドを App Store に提出する際に確認できることをいくつか紹介します。バージョン番号とビルド番号が適切に設定されていることを確認することで、それらが不適切に設定されていることを理由にアプリが自動的に拒否されることを避けることができます。

  1. アプリの新しいバージョンごとに、新しいVersion Numberを考案する必要があります。この番号は、最後に使用した Version Number よりも大きな値である必要があります。アプリの特定のリリースのために多くのビルドを提供することがありますが、アプリの新しいリリースごとに1つの新しいVersion Numberを使用する必要があるだけです。
  2. Version Numbers は再利用できません。
  3. 新しいビルドを提出するたびに、最後に使用したビルド番号 (同じバージョンのもの) よりも大きな値を持つ新しいビルド番号を考案する必要があります。
  4. 異なるリリース トレインで Build Number を再利用することはできますが、同じリリース トレイン内で Build Number を再利用することはできません。 macOS アプリの場合、どのリリース トレインでもビルド番号を再利用することはできません。

チェックリストに基づき、以下の (Version, Build Number) のシーケンスも有効です。

  • ケース:再利用 Build Number を異なるリリーストレインで再利用する。(注意 ではない macOSアプリ)

    (1.0.0, 1) -> (1.0.0, 2) -> ... -> (1.0.0, 11) -> ( 1.0.1 , 1 ) -> (1.0.1、2)