Unhandled exception with onComplicationChanged

I got this unhandled exception (can't reproduce it) after uninstalling an app. I guess it  tried to parse something to notify the watch face that can't be processed?

Any idea's?

Error Name: Unhandled Exception
Occurrences: 1
First Occurrence: 2026-02-23
Last Occurrence: 2026-02-23
Devices:
fēnix® 8 Solar 47mm: 21.25
App Versions: 2.0 Build 4.53
Languages: dut
Backtrace:
tixView.onComplicationChanged:1113

  • Usually I would say: handle the exception. Add a try/catch and log the error message or display it somehow.

    However I just did that in my latest release a week ago and I am still getting the Unhandled Exception in ERA, so I'm not so sure any more how much can we trust these reports

  • According to the API docs, Complications.getComplication() throws the following exception:

    (Complications.ComplicationNotFoundException) — Thrown if the given complication is not found.

    What's most likely happening here is a race condition where your app receives a notification that a complication changed, but by the time onComplicationChanged is actually called, the complication no longer exists.

    The fact that you can't reproduce it points to the possibility that it's very timing sensitive.

    In this case I would probably catch that specific exception (ComplicationNotFoundException), so that you can still detect other exceptions, which are not expected.

  • The app which I deleted had a custom complication. However I did not subscribe to it. Maybe the IDs got reordered and an old id got parsed. I'll add the exception to the code so I can investigate when it happens again. Lucky me so far it only happened on my own watch.