Leave and return to an app:

I noticed some of the basic apps that come with the watch, like walk, row, etc. I can swipe right and leave the app to look at the clock face or a widget and return to the app. I would like to do that with my app. I don't see any sample code showing how to do this. Is there some basic code written to accomplish this for general use? Seems like all apps would want this feature.

  • If your app doesn't respond to an input (key/swipe/tap), the system should handle it with whatever the default behavior is if that is possible.

    On devices like the venu/vivoactive4 the swipe right gesture generates on onBack behavior, which would cause the current view to be popped if it is not handled. There is no way for you to programmatically switch to the watch face page.

  • Native apps like run and row are not CIQ apps, and can do things that CIQ apps can't do.  On devices with hotkeys, like the 935/945 and fenix devices, you can get to the widget loop while running a CIQ device app.  If you want to have the use to have access to the time and maybe something in a widget, display that in your device app.  That's one of the reasons that many of my device apps have multiple screen and have added things like weather data on their own screen.

  • So I'm running my app and someone asks, "You're wearing a watch, what time is it?". Sorry I can't tell you or I'll lose my data, lol.

    I'm writing an app that I think will be useful and support my customers. Not only do I have to reinvent the wheel, I have to some how magically anticipate what other widgets or time formats they want to view while running my app.

    Does anyone else see this as a hole or design flaw?

    This seems unacceptable in my opinion. I don't like to use my own app because of this.

    Is the API that native apps run in available?

  • The only API you can use for this is CIQ. 

    When it comes to Time Of Day. you can read the system settings to determine 12/24 hour..  It's actually only a few lines of code.  For other things, it's kind of based on your app.  For example, I'll display steps during the activity, and display daily steps and goal at the same time.  Weather was also really minor to add, and I figured the hourly forecast would be handy.

    Device Apps mean you have to do pretty much everything yourself - enabling sensors, GPS, the recording itself, pauses/saves/discards and laps.  If you want to make use of these things without doing it yourself, look at doing a data field.

  • I'm not stating my point very clearly. I appreciate that a device app has access to many things that are related to the objective of the app. People have widgets for all sorts of things unrelated to my objective. Being blocked from all features that a watch has to offer is not professional or user friendly.

  • This is nothing new.  On the 735 for example, you can't get to the widget loop even from native apps.  Do you plan your app to be running full time or something?

  • When you say this is nothing new, are you saying it is a known deficiency? I wonder how competitor watches function? Yes my app would keep game scores over a variable period of time depending on the individual. Games and activities are interrupted by the real world and someone might need to look at their calendar or respond to a text etc. The fact that the native apps are interruptible on some or most watches is a desirable feature. This is how I discovered it and was like wow, I want to do that. How would one ask for this type of function to be available in some future release?   

  • When you go to the widget loop, you're not actually leaving the app.  You're just running the WF/widgets over the app.  What you could do is use Application.Storage to save your state and allow the user to actually exit your app and restart later using the state in Application.Storage.

  • Sounds like a easy workaround. I'll give that a try, thanks Jim.