Maybe add a "origin" key for alarms/timers that store which app created it? And make it possible for the user to decide, via settings, which alarms/timers should be visible in the Alarms app depending on the originating app? Is one solution at least :)
Maybe a "hidden" key is enough, with a switch in the alarms app options toggling between showing everything or only not hidden timers/alarms. Since the sched lib works really well any duplication of the functionality there would be suboptimal.
Yes, that might make more sense - keep it simple.
EDIT: Potentially it could be interesting for an app to keep track of alarms set by itself, in that case the "origin" key would probably make more sense.
There is some extra stuff to consider, e.g. if I create an alarm in noteify I expect it to shop up in alarm.
Maybe noteify just does not set the origin field and alarm shows all alarms with origin = alarm and origin = undefined.
Edit: As OP has mentioned the appid-field: "optional app ID for alarms that you set/use for your app". Sounds good to me.
IIRC the alarms app also doesn't show if an alarm has more info attached. So it is not immediately apparent if a Sched entry was made by alarms or a different app.
I think there are ways in which the alarms app could be extended to be very helpful for other apps as well. Every app that implements an own kind of alram could be added to a list and when creating a new alarm you could at the end have an option to select between a normal kind of alarm or a noteify/etc kind of alarm. Then if you activate an alternate app, there could be a link to a showMenu function of said app so you could configure the kind of alarm (eg. the message to be displayed by noteify) directly from a submenu of the alarms app.
The alarms app would then display all alarms sorted first by app (with own alarms first and then the ones by different app) with a seperator for every app.
In addition you should still be able to set any alarm to hidden if you don't want it modifiable by the alarms app.
That would for me be the perfect way to add custom functionality to alarms/sched without having to rewrite large parts of the software.
Maybe a "hidden" key is enough, with a switch in the alarms app options toggling between showing everything or only not hidden timers/alarms.
I think that's best, yes - in fact for now I'd say just hide them and don't worry about an option. Developers can always look in the json file.
I notice there is already (looking at the README in sched):
hidden : false, // OPTIONAL if false, the widget should not show an icon for this alarm
So maybe we go with
visibleor something like that?
Since the sched lib works really well any duplication of the functionality there would be suboptimal.
Yes, please don't duplicate it! I spent a lot of time trying to make sched to replace the 7 different duplicate (and all buggy) alarm implementations there were before - I don't want to have to go through that again!
Using the Sched library would be really helpful to me but every timer/alarm I generate also appears in the alarms app which is a bit annoying since in the app I can't differentiate between them. Is there a way to generate custom alarms that don't show in the app?
Even better would be a possibility to have a kind of bangle.showMenu that shows the same option as the alarms app but only with alarms I selected eg. using appid.