Writing activity type based on Run

I'm trying to write a new Activity Type, that is very similar to Run, and I would like to base it off of the already defined Activity and make the changes I need rather than starting from scratch. Is there any example code available to do this?

  • Native Activities are not written in CIQ.  In a device-app like this, you need to do a bunch of the things yourself.

    The RecordSample in the SDK is a very basic example

  • That's unfortunate, it seems like there's a lot of ways that Garmin nerfs what 3rd part developers can create on their platform compared to what they can develop in house. Thanks for the info.

  • it seems like there's a lot of ways that Garmin nerfs what 3rd part developers can create on their platform compared to what they can develop in house

    Agreed. I think a huge motivator is to prevent 3rd party devs from duplicating features that are (or used to be) reserved for more expensive models. For example, if a 3rd party dev could duplicate maps with equivalent (or better) user experience and functionality to the maps feature on high-end Forerunners, users might just buy a cheaper Forerunner and get the 3rd party app. Same goes for multisport and swimming features.

    Yeah, there are apps which do that kind of thing, and as nice as some of them are, they can never match Garmin native functionality, and that's by Garmin's design. I used dwMap for navigation years ago when I had a Forerunner which lacked navigation. As great as it was, it was severely hamstrung by the fact that it was a device app which had to reinvent the wheel (with a super limited subset of functionality of the native Running activity), and it was also constrained by the relatively slow CPU of that device.

    OTOH, Apple doesn't care if people try to duplicate the functionality of the Workout app on Apple Watch, because that app and its features aren't the primary reason ppl buy an Apple Watch rather than some other smartwatch.