@eskimo , we were authorised to use this entitlement since iOS 14, and I already made sure it's selected into all our proivisioning profiles. It was working for us perfectly until now. It just stopped working with Xcode 15. I suspect a bug in the new upload tool.
Post
Replies
Boosts
Views
Activity
There's a similar thread here: https://forums.developer.apple.com/forums/thread/732892
It didn't help me. What happens to me is that if I define NSExtensionPrincipalClass, the organizer won't let me upload to AppStore because NSExtensionPrincipalClass is unexpected. If I remove NSExtensionPrincipalClass, TestFlight fails to install because NSExtensionPrincipalClass is missing...
There's a similar thread here: https://forums.developer.apple.com/forums/thread/732892
It didn't help me. What happens to me is that if I define NSExtensionPrincipalClass, the organizer won't let me upload to AppStore because NSExtensionPrincipalClass is unexpected. If I remove NSExtensionPrincipalClass, TestFlight fails to install because NSExtensionPrincipalClass is missing...
-- deleted --
I have the same problem. Setting the minimum deployment to 17 allowed me to install on my device (ad-hoc). Then I tried to build for release but the organizer won't upload with the same error: NSExtensionPrincipalClass is unexpected.
So I removed NSExtensionPrincipalClass, recompiled and uploaded successfully. However when trying to install from TestFlight, it failed because NSExtensionPrincipalClass is missing. The console shows:
"Appex bundle at /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.kfzF1C/extracted/Payload/.app/PlugIns/XXXWidgetExtension.appex with id com..***.widget does not define either an NSExtensionMainStoryboard or NSExtensionPrincipalClass key with a string value in the NSExtension dictionary in its Info.plist"
So - with NSExtensionPrincipalClass - can't upload to appstore. Without NSExtensionPrincipalClass can't install because it's missing. What's the deal!?
I just recreated the provisioning profiles (edit, rename, save, download) and then uploaded and it worked.
Another thing, while I was having the problem before fixing it, I had a previous build in TestFlight which was built with the previous provisioning profiles, so I tried to release it. It failed and I got an email saying that the profiles are invalid.
So it seems like a bot at Apple (either software or human) revoked something that was used to validate the profiles. One of the reports in this thread suggests that this was reverted.
happened to me, was a able "hack around it":
change to:
[[PHImageManager defaultManager] requestAVAssetForVideo:asset options:options resultHandler:^(AVAsset * Nullable avasset, AVAudioMix * Nullable audioMix, NSDictionary * _Nullable info)
then use:
AVAssetExportSession *exportSession=nil;
if (avasset!=nil) {
exportSession=[AVAssetExportSession exportSessionWithAsset:avasset presetName:AVAssetExportPresetMediumQuality];
}
Go to build settings of the widget target: Set: "Dead Code Stripping" to NO
Set: "Enable Bitcode" to NO