Removing AppClip support - still trigger code signing issues

Hi,

We had AppClip in our app, but we eventually dropped support for that a couple of months ago. We even deleted the app id, and every provisioning profile and removed everything on the project regarding AppClip.

For performance testing purposes, we archive our app and export an IPA with Development mode, in order to run a few tests on top of that., but with Release config/Scheme, and with the bundle we use on the AppStore.

And we're having a weird issue that started happening recently: we cannot archive/export anymore using Development, because we have this codesign error:

Error Domain=IDEProfileQualificationErrorDomain Code=8 "Provisioning profile "match Development com.company" doesn't include the com.apple.developer.associated-appclip-app-identifiers entitlement." 

UserInfo={NSLocalizedDescription=Provisioning profile "match Development com.farfetch.discover" doesn't include the com.apple.developer.associated-appclip-app-identifiers entitlement., IDEProfileQualificationError_RequiredEntitlements={
    "application-identifier" = "$(AppIdentifierPrefix)com.company";
    "com.apple.developer.associated-appclip-app-identifiers" =     (
        "XXXXXX.com.companyClip",
        "XXXXXX.com.company.appClip"
    );
    ...

Basically, Xcode is complaining that we're missing the entitlements of something we don't have anymore. But there is not a single reference in our app about AppClips anymore, neither on developer portal's Provisioning Profiles.

We had this appid for the old app clip, but we don't have anymore

"XXXXXX.com.companyClip",

I'm afraid this could be some metadata that it's still on AppStoreConnect.

Are we missing any step towards complete removal of AppClip?

Or do we have to embrace that once you put an app clip, you cannot run away of its appid?

Thanks.

Note: we use fastlane match to handle all certificates and provisioning profiles.

Answered by crsantos_ff in 737348022

Sorted out. The answer was inconsistency between all Provisioning Profiles for that bundle id.

We regenerated all provisioning profiles when we removed AppClips (Development and AdHoc) but not AppStore. That was the culprit.

It's really weird to keep signing an app with a Provisioning Profile that included com.apple.developer.associated-appclip-app-identifiers, but we don't have that on entitlements anymore on the app (on our AppStore builds).

So, to be safe, we deleted all Provisioning Profiles on Dev Portal and regenerated them again, and it fixed the issue.

Make sure you don't have any AppClip app id created on Portal, otherwise the Provisioning Profiles you create for the parent bundle id will always include com.apple.developer.associated-appclip-app-identifiers.

After inspecting our AppStore Provisiong Profile I can say that I’m seeing the two appids there, inside com.apple.developer.associated-appclip-app-identifiers.

So that’s why we didn’t have issues with the Archive/distribute for AppStore, but I’m worried that as soon as we renew the provisioning profile, we cannot distribute due to this issue that is only happening right now for Development and AdHoc.

Not sure if it’s relevant, but we still have both app IDs in our Apple App Site Association file. Could that be the issue?

Accepted Answer

Sorted out. The answer was inconsistency between all Provisioning Profiles for that bundle id.

We regenerated all provisioning profiles when we removed AppClips (Development and AdHoc) but not AppStore. That was the culprit.

It's really weird to keep signing an app with a Provisioning Profile that included com.apple.developer.associated-appclip-app-identifiers, but we don't have that on entitlements anymore on the app (on our AppStore builds).

So, to be safe, we deleted all Provisioning Profiles on Dev Portal and regenerated them again, and it fixed the issue.

Make sure you don't have any AppClip app id created on Portal, otherwise the Provisioning Profiles you create for the parent bundle id will always include com.apple.developer.associated-appclip-app-identifiers.

Removing AppClip support - still trigger code signing issues
 
 
Q