Acknowledged
CIQQA-3251

Introduce new state for AppBase.onStart method when sensor pairing (CIQ System 8)

It would be helpful to have a way to determine whether the initialized application (AppBase) is being launched specifically for sensor pairing. This would allow the application to initialize only the components necessary for pairing.
In my case, the data field opens an ANT channel in the AppBase.onStart() method, which I want to avoid when the application instance is being used for pairing. As a workaround, I currently release the ANT channel when AppBase.getServiceDelegate() is called.
To address this more cleanly, I propose introducing a new state or flag within the onStart() method that indicates when the application has been launched from the Sensors menu.

Parents
  • > I initially thought that getInitialView() wouldn't be called for a data field unless it was in the foreground (that is, on the currently displayed data page). However, after running some tests, I realized I was mistaken. getInitialView() is called regardless of which data screen the field is on

    Yeah, note that DataField.compute() is called once per second whether or not the data field is visible. Same with other DataField methods like onTimerStart and onTimerLap.

    That wouldn't be possible if getInitialView wasn't called asap, after the app starts up, since it's getInitialView which returns your DataField-derived class instance.

    > Unfortunately, I am not able to edit the bug anymore.

    Yeah, unfortunately, once someone votes on a bug report, it can't be edited anymore. In the case when you're the sole voter on a bug report, you can undo your vote by clicking on the same button you used to vote (upvote / downvote) in order to make it editable again.

Comment
  • > I initially thought that getInitialView() wouldn't be called for a data field unless it was in the foreground (that is, on the currently displayed data page). However, after running some tests, I realized I was mistaken. getInitialView() is called regardless of which data screen the field is on

    Yeah, note that DataField.compute() is called once per second whether or not the data field is visible. Same with other DataField methods like onTimerStart and onTimerLap.

    That wouldn't be possible if getInitialView wasn't called asap, after the app starts up, since it's getInitialView which returns your DataField-derived class instance.

    > Unfortunately, I am not able to edit the bug anymore.

    Yeah, unfortunately, once someone votes on a bug report, it can't be edited anymore. In the case when you're the sole voter on a bug report, you can undo your vote by clicking on the same button you used to vote (upvote / downvote) in order to make it editable again.

Children
No Data