17

I am now getting this error when trying to upload to the app store, but I haven't made any changes to my healthkit capability and it everything looks fine (see images). Why is it saying the value is [] enter image description here

<

?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>aps-environment</key>
    <string>development</string>
    <key>com.apple.developer.healthkit</key>
    <true/>
    <key>com.apple.developer.healthkit.access</key>
    <array/>
    <key>com.apple.developer.icloud-container-identifiers</key>
    <array>
        <string>iCloud.codes.myndarc.newFitnessApp</string>
    </array>
    <key>com.apple.developer.icloud-services</key>
    <array>
        <string>CloudKit</string>
    </array>
    <key>com.apple.security.application-groups</key>
    <array>
        <string>group.com.myndarc.newFitnessApp</string>
    </array>
</dict>
</plist>

enter image description here

GarySabo
  • 5,806
  • 5
  • 49
  • 124
  • 1
    You *do* have an empty array for `com.apple.developer.healthkit.access`, as the error states. You should remove this key since you don't need access to clinical records and your provisioning profile doesn't have the HealthKit capabilities entitlement – Paulw11 Jan 14 '21 at 04:08
  • I'm experiencing the same issue but with `com.apple.developer.icloud-container-identifiers` – Nicholas Allio Jan 14 '21 at 11:52
  • 1
    I am facing same issue after deleting com.apple.developer.healthkit.access binary got rejected also – PSP Jan 15 '21 at 09:26
  • 1
    This works for me now -- looks like Apple fixed the bug – Lou Franco Jan 22 '21 at 01:08

6 Answers6

3

I wouldn't change our code too much, this appears to be something on Apple's end that hopefully they'll fix soon. https://developer.apple.com/system-status/

GarySabo
  • 5,806
  • 5
  • 49
  • 124
  • 1
    As of 5:30pm EST the system status page says that it's been resolved, but I still see the same errors when attempting to upload. – GarySabo Jan 14 '21 at 22:36
  • 1
    Anyone coming to this I would encourage you to file a Feedback with Apple – GarySabo Jan 15 '21 at 18:51
  • Having the same issue and fixed it by editing .entitlements file in a text editor and removing the com.apple.developer.icloud-container-identifier key. – friherd Jan 17 '21 at 10:51
2

Remove the following line in the .entitlements file

<key>com.apple.developer.healthkit.access</key>
<array/>

This not work :(. Binary will be rejected ITMS-90000: This bundle is invalid - $message.

What work for me: First, when you enable your app’s HealthKit capabilities: you must also select the Clinical Health Records checkbox! enter image description here

Next, you must provide a Health Records Usage string in your app’s Info.plist file. enter image description here

kiril kiroski
  • 806
  • 7
  • 8
  • 1
    I think if you delete this line you are also deleting your HealthKit capability – GarySabo Jan 14 '21 at 22:43
  • Yes and binary got rejected due to ITMS-90034: Missing or invalid signature – PSP Jan 15 '21 at 09:25
  • **!This work if you submit the app for TestFlight!** This does not work if you submit the app for review :(. Binary will be rejected ITMS-90000: This bundle is invalid - $message. But I add more info about rejection fix. https://stackoverflow.com/questions/65712473/app-store-connect-operation-error-itms-90164-for-key-com-apple-developer-hea/65725753#65725753 – kiril kiroski Jan 15 '21 at 14:11
  • This didn't seem to work a few days ago, but today I removed `com.apple.developer.healthkit.access ` and was able to submit – GarySabo Jan 18 '21 at 23:50
2

Update: It looks like Apple fixed this issue yesterday (January 21, 2021). I don't see the error anymore.


I have the same issue. If I read that error correctly it fails because the value for com.apple.developer.healthkit.access is different in the App Store provisioning profile and in the entitlements file.

And it's indeed different.

When I enable HealthKit capability from Xcode, it adds this to the entitlements file:

    <key>com.apple.developer.healthkit</key>
    <true/>
    <key>com.apple.developer.healthkit.access</key>
    <array/>

When I create an App Store provisioning profile from https://developer.apple.com/account/resources/profiles/list, then download it and open it with a text editor I see this:

                <key>com.apple.developer.healthkit</key>
        <true/>
                <key>com.apple.developer.healthkit.access</key>
        <array>
                <string>health-records</string>
        </array>

I'm not sure if it's possible to set what the provisioning profile sets for com.apple.developer.healthkit.access, so it looks like the only way to make them have the same value is to enable "Clinical Health Records" HealthKit capability from Xcode, so that it adds it to the entitlements file too. This doesn't sound like the right solution, since it forces you to enable "Clinical Health Records" even if you don't use it. It looks to me like this is a recent change on Apple's side that changed how the value from the entitlement file is compared to the one in the provisioning profile, as it didn't happen before and I didn't change neither the entitlements file nor the provisioning profile since the last successful app release.

Removing com.apple.developer.healthkit.access key from entitlements file is, in my opinion, also not a correct solution since the HealthKit capability is removed in "Signing & Capabilities" UI from Xcode when you do that. And also I see here some people reported that the app does not pass the App Store review when you do that. Also it's Xcode that adds that to entitlements when HealthKit capability is added, why would we need to remove that manually?

mihai1990
  • 632
  • 5
  • 20
0

I had the same issue with com.apple.developer.icloud-container-identifiers. and I checked the box containers at Signing and capabilities -> icloud, then the problem has been resolved

example:
example

Dharman
  • 30,962
  • 25
  • 85
  • 135
0

We're having the same issue. Adding "health-records" to the entitlements file combined with the NSUsage description in the plist file will work fine for sure, but still is a workaround. As we do not want to access clinical health records, nor to have that displayed somewhere (App Store) this is not a solution for us. Does anybody no whether this change will be displayed somewhere, e.g. in the App Store?

Dani
  • 123
  • 7
0

2021-01-22T02:34:25.810Z : TestFlight did not reject my build including

    <key>com.apple.developer.healthkit.access</key>
    <array/>