Sponsor Link
環境&対象
- macOS Ventura 13.4 Beta
- Xcode 14.3
- iOS 16.4 beta
AppStore への アップロード
アプリを AppStore から公開する時には、AppStore へのアップロードが必要となります。
AppStore でのレビューだけなく、AppStore へバイナリをアップロードする時にも、さまざまなチェックが行われます。
アップロード時に行われる項目は、以下のような項目です。
・バージョン番号等の整合性(前回のアップロードよりバージョンが上がっているか)
・アプリが使用する Capabilities の整合性
等
アプリ内購入を設定しているアプリだと アプリのレビューで Reject されてしまうと、アプリ内購入アイテムの再設定等が必要になり面倒なので、基本的な項目だけでも、アップロード時点でチェックしてくれるのは助かります。
レビューで Reject されることと比較して助かるだけで、アップロード時点で Reject されるのも手間なので避けたいです。
なお、アップロード時点でのチェックにひっかかると、エラーメッセージが表示されるのですが、意味がわからないケースがあります。
レビューでの Reject は、レビュアーに聞けますが、アップロードでのエラーは誰に聞くべきか・・・
アップロード時のエラー
“The product archive is invalid. The value of the CFBundleDocumentTypes key in the Info.plist must be an array of dictionaries, with each dictionary containing at least the CFBundleTypeName key. ”
というエラーが出た時の対処方法です。
Xcode 的には実際にチェックした項目についてのエラーメッセージを表示しているのですが、Xcode 上での設定項目名が、Key そのものになっていないこともあり、対応に迷うことも多いです。

直訳(?) すると、「Info.plist に定義されている キーをCFBundleDocumentTypes とするものは、dictionary の array であり、それぞれは、CFBundleTypeName キーの値を持っていないといけない」となります。
エラーの意味解読
このエラーの場合は、CFBundle で始まるキーの意味を解読するとその原因がわかってきます。
CFBundleDocumentTypes は、アプリの扱うドキュメントを定義する時のキーです。Xcode 上では、TARGETS にアプリを選んでいる時の Info タブ中の Document Types に該当します。
CFBundleTypeName は、Document Types 中の Name に該当します。
つまり、エラーメッセージは、この Name が設定されていないことが問題であると言っています。
具体的には Name が空欄であることが このエラーの原因です。
以下のように、適切な名称をセットすることで、エラーが解消できます。

なお、上記の Name は設定していなくても ローカルにアプリを動かしているときには 問題は発生しないようです。
AppStore にアップロードしようとするときにはじめて エラーとなりますので、疑うべき場所を特定しずらいです。
まとめ
AppStore へのアップロード時に出るエラーの解決方法(CFBundleTypeName エラーのケース)
- アプリで Document Type を定義したときは name を設定しないといけない
説明は以上です。
不明な点やおかしな点ありましたら、こちらまで。
SwiftUI おすすめ本
SwiftUI を理解するには、以下の本がおすすめです。
SwiftUI ViewMatery
SwiftUI で開発していくときに、ViewやLayoutのための適切なmodifierを探すのが大変です。
英語での説明になってしまいますが、以下の”SwiftUI Views Mastery Bundle”という本がビジュアル的に確認して探せるので、便利です。
英語ではありますが、1ページに コードと画面が並んでいるので、非常にわかりやすいです。
View に適用できる modifier もわかりやすく説明されているので、ビューの理解だけではなく、どのような装飾ができるかも簡単にわかります。
超便利です
販売元のページは、こちらです。
SwiftUI 徹底入門
# SwiftUI は、毎年大きく改善されていますので、少し古くなってしまいましたが、いまでも 定番本です。
Swift学習におすすめの本
詳解Swift
Swift の学習には、詳解 Swift という書籍が、おすすめです。
著者は、Swift の初期から書籍を出していますし、Swift の前に主力言語だった Objective-C という言語についても同様の書籍を出しています。
Sponsor Link