xarly
xarly

Reputation: 2154

Using Adhoc Profile for DriverKit show error: Xcode 14 and later requires a DriverKit development profile enabled for iOS and macOS

We got an app for iPad which has two targets one for the App itself (MainApp target ) and another one for the Driver ( Driver Target ) using DriverKit.

The app works fine in Development, but I'm trying to distribute it with adhoc.

I've requested the Distribution Entitlement to Apple, after getting it, the App Id for the Driver has the following Capabilities:

DriverKit, DriverKit (development), DriverKit USB Transport (development), DriverKit USB Transport - VendorID, In-App Purchase

Now in the profile section, I've created a adhoc profile for the Driver AppId (Identifier). Obviously I've also created an Adhoc profile for the Main AppId

Finally in the Signing & Capabilities Section I set up the profiles for MainApp target, int the Debug one I set up the Development one and int the Release one I set up the adhoc one.

I do the same in the Driver Target, but when I set up the Adhoc one in the Release, I've got a warning:

Xcode 14 and later requires a DriverKit development profile enabled for iOS and macOS. Visit the developer website to create or download a DriverKit profile.

Also interestingly the Signing Certificate section says: None

SigningAndCapabilitiesDriverTarget

I also set up the Capabilities for the Driver Target:

Inside these capabilities I set up the vendor ID as dictionary

Idvendor

The problem is, if I try to Archive the app I will get the previous Warning message as error:

Xcode 14 and later requires a DriverKit development profile enabled for iOS and macOS. Visit the developer website to create or download a DriverKit profile.

Any idea what I'm missing?

Thanks

Upvotes: 2

Views: 320

Answers (1)

Vannes Yang
Vannes Yang

Reputation: 137

I'd share my experience. I prepared:
1 bundle id - which I checked all I need capabilities in both "Capabilities" tab and "Additional Capabilities" tab.

2 Provision Profiles - both using the same bundle id, one is DriverKit App developer, another one is Developer ID.

In my XCode 15.3, I set my project using developer certificate so that it can build success. Then I go terminal and issue build command:

xcodebuild clean build CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -alltargets -configuration Release build

In my codesign script, I sign it with copying the Developer ID provision profile, the content is:

codesign \
--sign $CODE_SIGN_IDENTITY \
--entitlements <entitlement-file> \
--options runtime \
--verbose \
--force \
build/Release/<my-driver>.app

The driver seems workable and notarization pass.

Upvotes: 0

Related Questions