Hourly alert doesn't call OnShow etc.

On Instinct 2x the Hourly alert displays an alert but when going back to my watch face it doesn't call OnShow etc. It goes directly to OnUpdate. 

This is causing some problems for me, is there a way to detect hourly alert was displayed?

Or maybe even worse is this the case with all system alerts?

  • It will be all alerts.

    What are you doing in onShow?  Remember, each time onUpdate is called you want to draw the entire screen.  On some devices, the screen is actually cleared before onUpdate is called, and you won't see this in the sim. The only time you can update part of the screen is in onPartialUpdate.

  • That's a shame because not having to do draw calls for all my datafields every minute saves a lot of datafield draws every hour saving a lot of battery. Its about 12 datafields times 60 times per hour meaning 720 draw calls every hour. You get the picture. 

    Each datafield takes about 60us to draw and got a chart that takes about 160us to draw. I can't really improve those I think either.. 

  • Having to redraw the entire screen each time onUpdate is called is all through the discussion forum, as is how different devices behave differently.  What you may want to look at is using a buffered bitmap, doing your draws to that, and then drawing the buffered bitmap.

  • How much time does a buffered bitmap draw call take? Also Im dealing with limited memory on Instinct 2x :/

  • Try it and find out.  It could also vary based on the device.  With CIQ watch faces, they probably will never be as battery friendly as native ones that aren't written in CIQ.  Also, in general the more complex a CIQ watch faces is, the less battery friendly it will be.

    Custom fonts, less battery friendly than native fonts.

  • The bufferedbitmap seemed to do the trick, so ty! I had to adjust some code since I hit the memory limit after implementing it. But I managed as with the buffered bitmap I could actually remove some things from memory until I need to update the bitmap. Will check my battery life for a while, but I am very close to native I think.

    Average I calculate about 40 days battery life without sun now. Instinct is rated for 30 days, so pretty good I guess.