WKWatchKitApp info.plist key and build stuck in Processing

Already solved, but thought I'd document this as I've not seen it covered anywhere and it might help someone. This likely applies to existing iPhone plus WatchOS 1.0 apps being updated with xcode 7.


Background:


  • Existing universal app with WatchOS 1.0 extension
  • I've been doing some updates for iOS 9 / 3D Touch using xcode 7.0.1


The problem: After updating the iOS side of the app and submitting the build ready for beta testing, the build sat marked "Processing" for over 36 hours. No email re. issues, it just sat there.


Since it didn't look good, I then resubmitted (no changes except the build number). This time I got an email:


We have discovered one or more issues with your recent delivery for "<appname>". To process your delivery, the following issues must be corrected:

Invalid Bundle - Info.plist of “<WatchKit app extension>” specifies WKWatchKitApp=1 but it is an iOS WatchKit extension...

Once these issues have been corrected, you can then redeliver the corrected binary.


WKWatchKitApp was the clue - this is a key in the Watch app extension's info.plist. I don't fully understand what this key does, but it's for WatchOS 1.0 and later, and Xcode is supposed to configure it automatically (which I believe it did for me). I found that if I create a new WatchOS 1.0 target, this key is NOT added.


So, solution: Delete the WKWatchKitApp key from the WatchOS app extension's info.plist. After doing so and resubmitting the binary it's successfully through Processing (and out in the wild being tested :-)