How to start a legit companion App from iPhone App which uses CoreMotion?

I have an iOS application for the iPhone that works with a companion app on the Apple Watch, using CoreMotion to provide data. How can I launch the Apple Watch companion app from the iPhone app before starting data recording? Can startWatchAppWithWorkoutConfiguration(...) be used for this without registering an actual workout with HealthKit? Or can I register this action as a new custom workout?

When you attempt to start a workout from your iPhone on the paired Apple Watch, watchOS will invoke your WKApplicationDelegate. It is up to you with how to process the workout request.

It likely wouldn't be appropriate to use HealthKit to trigger this and then not record a workout. You'd have to disclose in your App Store Description that you work with the Health app, you'd have to put that into your privacy policy, have app specific rules, etc.

As for 'using HealthKit other than the purposes of HealthKit' See 2.5.1:

https://developer.apple.com/app-store/review/guidelines/#software-requirements

Apps should use APIs and frameworks for their intended purposes and indicate that integration in their app description. For example, the HomeKit framework should provide home automation services; and HealthKit should be used for health and fitness purposes and integrate with the Health app.

If your app is a fitness recording app, absolutely use this. If not, don't.

You could look at pushing a configuration via Watch Connectivity framework and WCSession, but that doesn't guarantee the companion watch will launch either.

Another approach you might take is to use Core Bluetooth. Have the watch scan, have the iPhone advertise. Again you're playing games.

Your best bet, make an Apple Feedback, make your argument for your use case, and ask them to make an API to launch the watch app outside of HealthKit.

How to start a legit companion App from iPhone App which uses CoreMotion?
 
 
Q