Mac app won't launch on 10.7 due to entitlements

I am developing a non-appstore Developer ID app and have found I am unable to launch it on 10.7. It launches just fine on 10.6 & 10.14 but I can see the following error in system.log with 10.7:


Oct 18 10:44:42 macos-10 taskgated[768]: none of the 0 applicable provisioning profile(s) apply
Oct 18 10:44:42 macos-10 taskgated[768]: killed <bundle-id>[pid 781] because its use of the com.apple.developer.team-identifier entitlement is not allowed
Oct 18 10:44:42 macos-10 com.apple.launchd.peruser.501[135] ([0x0-0x3f03f].<bundle-id>[781]): Exited: Killed: 9

The app uses the Personal VPN entitlement and has an App ID generated by Xcode, and uses a Mac DirectDistribution provisioning profile. The above error states that there were no applicable profiles so I'm wondering it is not being embedded correctly (although that wouldn't explain why other versions on macOS don't have the same issue).


Can anybody shed any light on the cause of the the issue?


Many thanks

Replies

Does it use iCloud? Using iCloud with a Developer ID is a modern enhancement.

We aren't using iCloud, and it's disabled against the app ID on the provisioning portal. The only other service enabled is In-App Purchases but it doesn't seem to be possible to uncheck or create an app ID with that disabled.

Do you absolutely have to have 10.7 support? Any macOS version before 10.9 doesn't really work on the internet anymore. No system process will be able to make a secure https connection on 10.8 or earlier. I used to support 10.6 back when my app was free. But when I added in-app purchases (via Paddle), they would only work on 10.9 or later. Only a couple of people have complained.

john daniel wrote:

Do you absolutely have to have 10.7 support?

I’m with john daniel on this one: If you don’t absolutely have to support 10.7, you should drop it.

I believe the issue you’re seeing here is that 10.7 has enough of the App Store architecture to support entitlements but not enough to support the provisioning profile required to whitelist those entitlements. Hence things work on 10.14 (because you have the provisioning profile) and work on 10.6 (because it’s not checking entitlements) but not on 10.7.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"