H_H
H_H

Reputation: 136

The value of the CFBundleDocumentTypes key in the Info.plist must be an array of dictionaries

We are getting the below issue while uploading our app to app store although we are are not using CFBundleDocumentTypes in the app and the previous version uploaded successfully last week

ERROR ITMS-90149: "This bundle 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.”

enter image description here

enter image description here

How can we solve this?

XCODE 11.3.1

thanks.

Upvotes: 1

Views: 5115

Answers (4)

Yohst
Yohst

Reputation: 1902

In my case I had a series of doc types but an empty at the end I continue to miss (funny how you don't see these sort of things). It had been there for at least 2 prior distributions.

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeIconFiles</key>
        <array/>
        <key>CFBundleTypeName</key>
        <string>GPS Exchange Format (GPX)</string>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>LSHandlerRank</key>
        <string>Owner</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>com.topografix.gpx</string>
        </array>
    </dict>
    <dict>
        <key>CFBundleTypeName</key>
        <string>JSON</string>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>LSHandlerRank</key>
        <string>Default</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>public.json</string>
        </array>
    </dict>
    <dict>   < ---- that one !
    </dict>
</array>

Upvotes: 0

Ofir Malachi
Ofir Malachi

Reputation: 1286

Solution: (You are missing some keys & values)

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeName</key>
        <string></string>
    </dict>
</array>

Upvotes: 1

H_H
H_H

Reputation: 136

After So many hours of research finally made a successful upload to app store.

It seems apple have some changes in the submission of app.

we have the below in the info.plist which was working normally for the past 10 submission

<key>UTExportedTypeDeclarations</key>
<array>
    <string>public.url</string>
    <string>public.plain-text</string>
    <string>public.image</string>
</array>

After removing it and uploading to store everything worked normally Dont know what is that related to CFBundleDocumentTypes but that was the reason

Upvotes: 1

Muhammad Ali
Muhammad Ali

Reputation: 915

hi can you open your info.plist file as a source and check if your CFBundleDocumentTypes key has the correct format ie

<key>CFBundleDocumentTypes</key>
 <array>
    <dict>
    </dict>
 </array>

I guess in your case you are also missing CFBundleTypeName key which is a must ie

<key>CFBundleTypeName</key>
<string>Your App</string>

to get a complete idea of code refer here

Upvotes: 4

Related Questions