web-dev-qa-db-ja.com

Info.plistアップロードエラーのCFBundleVersion

「アップロードしたバイナリは無効でした。Info.plistファイルのキーCFBundleVersionには、以前にアップロードしたバージョンよりも高いバージョンが含まれている必要があります。」

アプリケーションをアップロードするときにこのエラーが発生します。

ITunes Connectで更新バージョンを1.2に設定し、.plistファイルも1.2に更新しました。

このエラーが発生する理由がわかりません。任意の助けをいただければ幸いです。ありがとう。

107
Adam H

Appleのアップロードサーバーには、少なくとも12か月以上修正されていないバグが少なくとも1つあります。注意すべきこと:

  1. Appleは、バージョン番号内の先行ゼロを削除します。つまり、「文字列全体」は数字として扱われず、代わりにドット間のビットは別の数字として扱われます。例えば「1.02」はAppleとして「1.2」として扱われます。したがって、Appleの場合、1.02は1.1よりも大きいです
  2. Appleは時々「混乱」し、アップロードされたアプリを以前にアップロードした別のアプリのバージョンと比較するようです。それは多くの人に起こりました、そして私はそれを数回自分で見ました
  3. Appleは「CFBundleVersion」(つまり、「Bundle versions string、short」ではなく「Bundle version」)を比較することになっています。混同しないでください。
  4. 多くの場合、実行可能な唯一の解決策は、フロントナンバーを増やすことです(たとえば、「2.4」の「2」-「3」に増やします)
  5. アップロードするバージョン番号は、iTunesに表示されるバージョン番号とは無関係です-必要なものをそこに置くことができ、それがユーザーに表示されます
  6. ...ただし、アプリ内で「実際の」バージョン番号も報告する場合、ユーザーには、iTunesバージョンではなくCFBundleVersionが表示されます(通常はコーディング方法によって異なります)。アプリ内)
207
Adam

ビルド番号を更新します。バージョン番号は重要ですが、ビルド番号によって違いが大きくなります。たとえば、次のようなアプリの初期バージョンがありました。

version #: 1.0
build #:   1.0

ただし、次のバージョン、つまり、.

version #: 1.1
build #:   1.0

アップロードは受け入れられません。ビルド番号を1.1に増やすだけで、アップロードが受け入れられました。

29
The Crazy Chimp

Xcode 4は、アプリケーションを再アーカイブしない場合、同じバージョンを再アップロードしたいと考えます。バンドルバージョンを変更して再構築しても、アップロードは失敗します。製品メニューで「Archive」を忘れずに実行してください!

9
Patrice Gagnon

ここでの回答の多くは最終的に私を助けましたが、正確な「バージョン」番号を見るまでAppleが比較していました。

  1. ITunes Connectに移動->アプリケーションの管理
  2. 以前のバージョンを確認するアプリケーションを選択します
  3. 詳細の表示というラベルの付いた青いボタンをクリックします
  4. Binary Detailsというリンクをクリックします
  5. Bundle Versionに指定された値を見つけます

バージョン番号1.0.1を提出したと思っていたとしても、実際にAppleに保存された番号は101でした。上記のコメントのいくつかは、バージョンを2.0(20)または1.5(15)または1.2(12)—これらはすべて101未満であり、バージョン番号102(ドットなし)を更新すると問題が修正されました。

7
Kyle Hayes

この記事 は、アプリストアに表示されるバージョン番号が必ずしもバンドルのバージョン番号と同じではないことを指摘しています。 iTunesでアプリの詳細を表示すると、「バイナリの詳細」という名前のリンクがあります。そのページにはバンドルのバージョンが表示されます。私が取り組んでいたアプリの1つはバージョン1.0でしたが、バンドルバージョンは2.0でした。バージョン1.1のバンドルのアップロードは失敗しましたが、2.1は機能しました。

そのため、アプリバージョンとバンドルバージョンがあります。この問題は、バンドルバージョンに関係しています。

6
Pieter Witvoet

混乱は数字の形式に起因するようです。バンドルバージョンは10進数ではありません。これはバージョン(またはビルド)であるため、1.11は実際には「ワンポイントイレブン」です。したがって、1.11は1.2より大きくなります。この場合、1.20を使用して成功しました。

5
Gavin

通常、これはバージョン番号がないために発生する可能性があります。そのため、Identityの下にバージョン番号を追加し、Build numberも確認します。

enter image description here

コーディングを続ける......... :)

4

私(Xcode 4.5)では、ビルド番号を変更することで問題が解決しました。バージョンを1.0.2 ... 2.0.2などに設定してから、ビルド番号を増やします(アダム3ポイントはどこにidiaがあるかを示します)。

3
setdvd

これは古い質問であることは知っていますが、この問題にぶつかりました。アーカイブからプロジェクトを削除してから再アーカイブすることで解決しました。どうやら以前のバージョンのアプリがそこに座っていて、混乱を引き起こしていたようです。

2
Henry F

Xcode4のバージョン番号の横にあるターゲットの概要はビルドです。これを1から開始し、バイナリアップロードを行うたびに増分し、問題を解決しました

2
axe

この問題を解決するために数時間を費やしました。テキストエディターでinfo.plistを開き、ターゲットの情報を取得してプロパティのバージョンを読み取り、妻にバージョンを読むように依頼して、CFBundleVersionが実際に古いバージョンよりも高いことを確認するために全力でチェックしましたiTunesで、予想外の以前のアルツハイマー病に見舞われなかったことを確認しました。

結局、これが何らかの形でトリックを行いました。私の古いバージョンは1.0.4でした。 1.3.5、1.4.5などを試しました。どれも機能しませんでした。しかし驚くべきことに、2.0.0を入力したとき、Application Loaderは見たものやアップロードしたものが気に入っています。これはApplication Loaderのバグが原因ですか?

2
Wayne Lo

エラーメッセージに注意してください。

エラーメッセージには、以前のバンドル番号が角かっこで囲まれています(例[9])。

したがって、新しいバージョン番号は1.2ですが、そのバンドル番号(9.1など)を増やす必要があります

したがって、iTunes Connectでバージョンを1.1から1.2に更新するときは、プロジェクトでこれらの値を設定する必要があります

Version number = 1.2
Bundle number = [previous bundle number]++
2
Serge Seletskyy

報告されたエラーがCFBundleVersionである場合、修正は通常非常に簡単です。これを確認/試してください:

  1. Project Navigatorで最上位のプロジェクトアイテムに移動し、クリックします。
  2. 右側のパネルで、アプリケーションターゲットを右クリックします。
  3. 概要タブをクリックします。

概要タブでは、調整できる2つの異なる「バージョン」があることがわかります。 1つ目は[バージョン]フィールドで、Macアプリのデフォルトの[バージョン情報]画面で使用されます。右側の1つは「ビルドバージョン」です。これは、App Storeへの提出に本当に重要なものです!

2
David Hoelzer

ITunes Connectにログインして、アプリの現在のバージョン(送信したがライブではないものを含む)を確認できるはずです。以前にバージョン番号の大きい(または同じ)バージョンを送信していないことを確認してください。

2
Danny Tuppeny

「バージョン」と「ビルド」を入れ替えて間違えました。

バージョンフィールドに2.3を入れる代わりに、ビルド番号に入れます。

1
Pritesh Desai

私のプロジェクトにはiPhoneとiPadのバージョンがありますが、iPadのインフォリストは何らかの理由でiPad製品に関連付けられていませんでした。ターゲットメンバーシップを確認し、正しい製品に関連付けることでこの問題は解決しました.

1
Jay Adams

この投稿でこのエラーの解決策を見つけました CFBundleVersionは以前のバージョンよりも高くなければなりません

お役に立てれば!

私は同じ問題を抱えており、アーカイブしていないために起こりました。1.0で使用した最初のアーカイブを使用していましたが、1.0.1でした。そこで、iOSデバイスを選択し、アーカイブしてから検証しました。 Ta-daaa、うまくいきました!

1
Gonzo345

ここに私が問題を修正した方法があります(そして、これは多くの人々の問題だと推測しています):

1)プロジェクト設定の全般タブをクリックします(すべてのコードファイルの上部にあるプロジェクト名をクリックするとアクセスできます)。

2)ビルドフィールドが、「バンドルバージョン」キーのplistに入力したものと一致することを確認します。

なんらかの理由で、彼らは同期していませんでした。 Bundler Versionキーを変更すると、同期するはずです(逆も同様です)。しかし、それは何らかの理由で起こりませんでした-バグかもしれません。

1
Ser Pounce

Appleの "Application Loader"を使用してipaファイルをアップロードしている限り、バージョン番号が増え続けることはありませんが、XCodeの "Organizer"(バージョン3.2.5の "Window"プルダウンの下にあります) 、「検証...」ボタンをクリックし、承認されるのを待ってから「送信...」ボタンをクリックすると、すべてが正常なバージョン番号(現在のバージョン番号より1つ上の増分)アプリストアで入手可能)。

0
Honcho

私は同様の問題を抱えており、30分を費やした後、間違った数を増やしていることに気付きました。増加する代わりにBundle version増加していましたBundleversions, string, shortInfo.plistで。 CMD + Shift + Fを使用して、プロジェクトの「CFBundleVersion」を検索します。CFBundleVersion番号を増やす必要があることがわかります。

0
Josip B.

以前にアップロードしたバージョンのバンドルバージョンを確認し、すでにアップロードしたバージョンのバンドルバージョンと比較して、より高いバンドルバージョンを指定する必要があります。すでにアップロードしたバージョンは、iTunesコネクト/アプリケーション/詳細/バイナリ詳細で表示できます.

0
Vishnu R Kaimal

別の解決策を見つけました。

ターゲットを選択した場合>>情報>>更新バンドルID。

0
Michael

10月下旬 Appleは、バージョン番号が4桁(1.2.3.4または1.234ではなく、1.2.3または1.23)である必要があります。これはライブラリに適用されます。も!

プロジェクトディレクトリ内の問題のあるバージョン番号の簡単なgrepにより、問題のあるライブラリが表示されます。

grep -r "1.2.3.4" .

0
Warpling

xcode 4.2では、info.plistファイルから変更した場合、バンドルバージョンを登録しないようです。 Xcodeパネルの「info」で新しいバンドルバージョンを直接設定すると、動作するようになりました。

0
Marco Allori

同じ問題がありました。最初に送信されたバージョンは1.5.20でしたが、1.7.30に更新したいと考えていました。

バージョン1.8、2.0、および3.0の試行に失敗した後、CFBundleVersionを10.0に更新しましたが、突然動作しました。

この動作の背後にあるロジックが何であるかはわかりませんが、約2日間の作業時間を無駄にしました。

0
BastiBen

同様の問題に2泊しました。以前のバージョンは1.02でしたが、1.2、1.20、1.1で検証しようとすると、常に無効なバイナリメッセージが表示されました。

バージョン番号として2.0を入力することで解決しましたが、うまくいきました。これもバグだと思います。最近ゲームを1.0から1.1にアップグレードしたときにこのメッセージは表示されませんでしたが、それはxcode 3で発生しました。ヒントをありがとう!

0
machineboy

Version = "1.1.1.0"をversion = "1.1.1"に変更してみてください

0
RouR

アクティブなTestFlightベータ版を実行していました。 ビルド202、バージョン407

officialApp Storeレビューのためにアプリを提出しました。 ビルド202、バージョン435、承認されました。ただそこに座って、App Storeにライブでプッシュされるのを待っています。

複雑なサイドストーリーを追加することなく、私がしたかったのは、TestFlightベータ版ユーザーに、App Storeバージョンを公開する前に数日間公式App Storeバージョンをプレビューするための更新バージョンを提供することです。なぜ聞くの?彼らは無料の機能を手に入れていたので、アプリが公開されるとお金がかかりそうでした。

そこで、Build 202、バージョン436をTestFlightに提出しましたが、拒否されました。

同じビルド番号を持つ承認済みの公式App-Store候補があるため、拒否されました

解決策:TestFlightバージョンのビルド番号を変更します。 Build 202(追加のゼロを追加)バージョン436をTestFlightに提出し、承認されました。心配しないで、同じBundleIDを使用している限り、このビルドを同じTestFlightベータグループにプッシュできます。

0
jungledev

同じ問題がありました。基本的に、以前のバージョンは1.12でしたが、1.2に変更したかったのですが、前述のエラーがありました。私は1.20を試してみましたが、完璧に機能しました

0
mukaissi