Can a developer answer a few questions?

Discussion in 'Apple Watch' started by tombiscuit, Sep 28, 2015.

  1. tombiscuit macrumors member

    tombiscuit

    Joined:
    Jul 23, 2015
    Location:
    UK
    #1
    I'm curious as to what happens when I start an app on my phone (assuming this is a Watch 1.x app, not one that runs on the phone itself).

    Are you a Watch app developer, and if so can you explain the steps that happen when I tap an app? For example, the first thing that usually happens is that a generic progress display appears for a few seconds. What's happening at this stage?

    Then the app starts but sometimes it has its own progress display, so is presumably fetching data from somewhere. But why didn't that happen earlier?

    Is it the fact that Bluetooth is causing the slowness of the Apple Watch, or is it just a lack of compute power? I find the latter a bit difficult to believe, but the latter seems very plausible.

    How quickly could an app start? I notice that the BBC News app starts quicker than other apps, for example. What voodoo is it using?
     
  2. CobraPA macrumors 6502

    Joined:
    Mar 12, 2011
    Location:
    Lansdale, PA, USA
    #2
    I'm not sure developers will be able to answer your question with much detail. Apple documents the basic startup sequences of apps and apps with watch extensions, but developers have a lot of freedom in how efficient they make their code at app initialization.

    iOS can display a generic startup screen, I suspect that this varies with the size of the app and how busy the phone is at the time, but I'm not sure Apple documents this. There have also been changes to how this works over time, so that more recent apps can launch an image (like a splash screen) earlier in the process. Developers can use this to make there app appear to start earlier, although it may still have the same amount of work to do.

    This is generally when the app is actually in control and can start putting up it's own graphics. But it's really app specific and also relates to how efficient the app developers make their app. It could be loading one image from the local app install, it could be pulling some images over the network, it could be setting up data for a game, it could even be buggy and just going slow...

    You can read some of Apple's basic documentation here: https://developer.apple.com/library...ingGuide/TheAppLifeCycle/TheAppLifeCycle.html

    Their stuff is pretty much public, unless it is pre-release. But they don't give much hard info about performance, which seems to be what you are asking.

    It really depends on a bunch of things, I'd say mostly how well the app is written and how lightweight it is during the startup process. The watch just increases the effects of startup, as it has less resources and the bluetooth connection, so in-efficient apps just look worse running in the watch environment.
     

Share This Page