【Xcode】CFBundleVersion Mismatchエラーの原因と解決法

この記事からわかること

  • Xcodeエラー
  • App Storeアーカイブ時のwarning
  • CFBundleVersion Mismatch — The CFBundleVersion value '2' of extension 'Main.app/Plugins/WidgetExtemsion.appex' does not match the CFBundleVersion value '2.1' of its containing iOS application 'Main.app'.

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

CFBundleVersion Mismatchエラー

XcodeでApp StoreにiOSアプリをアーカイブしようとした際に「Warnings」となり以下のようなエラーが発生してしまいました。

【Xcode】CFBundleVersion Mismatchエラーの原因と解決法

CFBundleVersion Mismatch — The CFBundleVersion value '2' of extension 'Main.app/Plugins/WidgetExtemsion.appex' does not match the CFBundleVersion value '2.1' of its containing iOS application 'Main.app'.

CFBundleShortVersionString Mismatch — The CFBundleShortVersionString value '1.9' of extension 'Main.app/Plugins/WidgetExtemsion.appex' does not match the CFBundleShortVersionString value '2.0' of its containing iOS application 'Main.app'.

このままでもApp Storeにはビルドできていたので審査を進めることが可能なようです。

原因

Warnings」が発生した原因を突き止めるために翻訳してみます。

CFBundleVersion の不一致 — 拡張機能 'Main.app/Plugins/WidgetExtemsion.appex' の CFBundleVersion 値 '2' は、それを含む iOS アプリケーション 'Main.app' の CFBundleVersion 値 '2.1' と一致しません。

どうやらメインアプリのCFBundleVersionと拡張機能(今回はWidget)のCFBundleVersionが異なることで怒られているようです。

※:CFBundleVersionとはビルド管理バージョンのこと。

おすすめ記事:【iOS開発/Xcode】CFBundleVersionとは?ビルド番号とバージョンの違い

私のアプリにはWidgetを追加していたのでターゲットが2つになっていましたがWidget側のビルド番号をインクリメントし忘れていたために起きたエラーのようでした。

おすすめ記事:【Swift UI】Widget(ウィジェット)の実装方法!TimelineProviderとは?

なので再度ビルド番号を2つともインクリメントさせてアーカイブしたところ正常に受け付けてくれました

Xcodeからアプリをアップロードして成功した際の画面

拡張機能を追加している場合のCFBundleVersion管理は意識しておかないとまた同じミスをしてしまいそうですね。。

ちなみにその後に以下のようなエラーも発生しました。

【Xcode】Metadata/Info.plist Mismatch.エラーの原因と解決法

おすすめ記事:【Xcode】Metadata/Info.plist Mismatch.エラーの原因と解決法

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index