I've been trying to fix this issue and I have tried many things. The problem remains, the "Validate App" Button is disabled. I can build the app on real hardware, but I can't upload it to the App Store Connect.
Clicking Distribute opens this sheet, I can export .ipa
, but then there will be issue with the Transporter described in the original question. Possibly, Transporter is not yet updated to support watchOS 10 builds. So the Xcode 15 is my only hope.
I suspect that the issue is with my project configuration. The problem is that it is too many unknowns, the default template doesn't work, and there's no proper documentation for watchOS only apps.
With Xcode 15, I will attempt to build a minimal reproducible scenario. Using Xcode 15 and creating a new project will make sure I am using an up-to-date default template.
- I have created a new project with a Bundle identifier ending with the product name, e.g. "MYApp",
com.company.MYApp
. Selected "Watch-only App". Include tests checked. - Select main app target, Bundle ID would show
.watchkitapp
, replaced with com.company.MYApp
. - Archiving the product, leads to a problem. The archive is classified as "Other items". I would expect it under "watchOS Apps"
- I already know how to fix it by
SKIP_INSTALL
to YES
. And with this change, it's no longer "Generic Xcode Archive", it's "watchOS App Archive"
//:configuration = Release
SKIP_INSTALL = NO
- I am restless regarding
.watchkitapp
, does the bundle ID need to have it? I have tried with and without it, and the only difference I can observe is in Organizer GUI, I can see "watchOS app" in the oval brackets before the bundle ID.
- I have tried all 6 permutations for the following flags.
INFOPLIST_KEY_WKWatchOnly = YES
INFOPLIST_KEY_WKRunsIndependentlyOfCompanionApp = NO
- As the target device for archiving I have tried a generic, simulator (which is new in Xcode 15) and real hardware.
The main problem remains. The "Validate App" button is disabled.