昨日、Xcode 11のベータ版をダウンロードしました。その後、プロジェクトを開いて、新しいXcodeで実行しようとしました。残念ながら次のメッセージでエラーが発生しました:
Failed to install the requested application
Domain: NSPOSIXErrorDomain
Code: 22
Failure Reason: The application's CFBundleVersion is invalid.
Recovery Suggestion: Ensure your bundle contains a CFBundleVersion with a valid semantic version number.
--
ベータ版を閉じて、最新の安定したバージョンのXcode(10.2.1)で再度実行しようとしましたが、同じエラーが発生しました。 Xocde 11でプロジェクトを実行しようとする前に、Xcode 10では問題なく動作したことを言及する必要があります。ベータ版Xcodeで実行する前後で何も変更されていません。
私がすでに試したこと:
~/Library/Caches/com.Apple.dt.Xcode
~/Library/Developer
~/Library/MobileDevice
~/Library/Preferences/com.Apple.dt.Xcode.plist
/Library/Preferences/com.Apple.dt.Xcode.plist
/System/Library/Receipts/com.Apple.pkg.XcodeExtensionSupport.bom
/System/Library/Receipts/com.Apple.pkg.XcodeExtensionSupport.plist
/System/Library/Receipts/com.Apple.pkg.XcodeSystemResources.bom
/System/Library/Receipts/com.Apple.pkg.XcodeSystemResources.plist
Xcode 11でテストされていない他のプロジェクトを問題なく実行できます。
私の最後のアイデアはmacOSを再インストールすることですが、それはしたくないです。
編集:アプリケーションが物理的なiPhone XSで動作していることを忘れていました。
私の場合、ビルドバージョンフィールドは空でした。そこに値を追加しましたが、それでも機能しませんでした。私は_killall -9 CoreSimulatorBridge
_コマンドを試しましたが、それも役に立ちませんでした。最後に、info.plistのxml([Open as-> Source code])をチェックしたところ、CFBundleVersionキーが存在せず、バージョンがinfo.plistにCFBundleShortVersionString。
以下に示すようにCFBundleVersionキーをinfo.plistに追加したところ、うまくいきました。
<key>CFBundleVersion</key> <string>$(MARKETING_VERSION)</string>
それが他の誰かにも役立つことを願っています。
私は昨日この問題に直面していました。 gitからコードをプルしてコンパイルしようとしたが、その後、シミュレーターでアプリを実行できない場合があります(またはアプリをアーカイブしてアプリストアに送信すると、バージョン番号がアーカイブ情報に入れられませんリスト、1.3.4(123)などのバージョン情報なし)。エラーメッセージは、CFbundleVersionが正しくセットアップされていないことです。 Xcodeのバージョンは11.4(11E146)です。
だから私は方法に従ってみました:
Info.plistのCFBundleVersionを修正します(正しいバージョンの形式、番号、またはX.X.XXを設定してください)。
バンドル識別子を変更します。たとえば、プレフィックスアドレスcom.exampleをcom.example.testに追加します。次に、アプリをコンパイルしてシミュレータにインストールしてみます。現在、アプリが正常にインストールできることがわかります。
次に、バンドルIDをcom.exampleなどの元のIDに変更します。その後、もう一度お試しください。シミュレータまたはアーカイブにアプリを正常にインストールできることがわかります。
こんにちは私は今これで解決しました:私のinfo.plistにはこのキーしかありませんでした:
<key>CFBundleShortVersionString</key>
<string>2.1</string>
...そして今、これを追加するすべての作品:
<key>CFBundleVersion</key>
<string>2.1</string>
再び動くシミュレーターで….
注:CFBundleVersionがなければ、私のアプリは物理デバイスで完全に動作しました!!!
以下が表示された場合running error 。
(*下の添付のスクリーンショットを参照)
これは、この問題を解決する方法です。
数ステップで完了します。
ステップ1)Xcodeでプロジェクトナビゲーターに移動します。
ステップ2)info.plist内。
代わりに、(4.0)から(4)に値を1桁に変更します。小数点を削除する。
ステップ3)* ((Bundle versions string、short) を(Bundle Version)の下に追加します
// Hint: Select the + sign to browse it if necessary .
ステップ4)[値]フィールド(文字列)にバージョンを追加しますが、今回は小数ピリオドを使用します。
(バンドルバージョン)が4の場合は、ピリオドを追加してください4.0
ステップ5)ビルド成功
Happy Coding :-)