Kumaraswamy, now it works
That's why you shouldn't be so hasty when you assume that something (e.g. an extension) is faulty. Google and many Android device manufacturers are constantly harassing you with new restrictions and additional battery saving options that are almost impossible to avoid or can no longer be turned off.
The whole madness started with and after the introduction of Doze Mode with Android 6. And it's gotten worse every year since then.
But of course everything is in our best interest.
That's right, most of these manufacturers add their own so called "battery savers" that aims to save battery by limiting the software capabilities.
On Samsung this was a big problem for Android 10-11 phones. On Chinese phones, it's been the worst for ever, they tend to auto disable every background execution features by default, unless your app is a very popular ones like "Whatsapp" where you would be automatically whitelisted by the device.
Hopefully Google has promised to unify system behaviors for all the Androids out there (time will tell us how it turns out, nothing great achieved so far)
I wouldn't bet a cent on promises and positive developments for users from Google.
I would like to apologize for the unfounded accusations against Taifun, the extension works well, the whole problem turned out to be in the phone settings. I also want to say thank you to Kumaraswamy for telling me where I was wrong
Perhaps when autostart is called I could just run the functions I need to run and then end the program. Hopefully minimizing disruption of the user experience.
It looks like itoo background functions might be stopped. I want it to run without fail. If itoo background processes are called on a regular basis will that prevent them from being stopped by the system and battery savers?
Hi, what exactly do you want to get done?
- You want to perform an operation when the message is shown without opening the screen that would cause user disruption, is this what you are talking about?
- And while doing that operation you would also decide the next time to set for the Alarm, am I right?
Yes, I need to run a function when the alarm is activated and also set the next alarm without opening the screen or disrupting the user experience.
I'm still working on some functionality to combine the alarmmanager extension together with itoo... as soon as I got something running I will let you know
Taifun
Thank you. I will be happy to make a donation
Show on top notification check is not working.. I need the app to run daily to do some house keeping and provide relevant notifications. However, even after setting the permission it keeps testing as false even when the permission is infact set. I must be sure this permission is set or the whole program fails my purpose..
Is there a definite way to check to be sure the permission is set?
This block is put in initialize screen and always pops up the message..
This check is also always running reguargdless as it always returns false.
well, if the user never enables appear on top settings, then method HasAppearOnTopPermission always will return false
how did you set the blocks in the AfterChoosing event? If you take a look at my example project "Alarm Manager with Autostart Test" you will see these blocks
In the following dialog screen the user has to explicitely choose the app to enable appear on top settings, see also the documentation at App Inventor Extensions: Alarm Manager | Pura Vida Apps. Here are the relevant screenshots
Also rather than only use an if statement to ask for that permission, use an if then else statement to continue with your logic in the else part only if the permission is available as shown in the example project.
Taifun
I need some help with the Taifun Alarm Manager extension. I was wondering if anyone could help me combine the autostart function and the custom alarm settings function. I would like to create an alarm that could be set for certain times and also autostart.
as a start please read the documentation at App Inventor Extensions: Alarm Manager | Pura Vida Apps and try the example projects available in the download folder
please try something and if you got stuck, post a screenshot of your relevant blocks
Taifun
The permission was enabled, but false is still returned. SO, I can not verify that the permission is enabled.
In the event that they did not enable it I need to give them another opportunity to enable appear on top.
no
if the user enabled appear on top settings, then obviously method HasAppearOnTopPermission will return true
unfortunately you forgot to provide a screenshot of your relevant blocks...
why don't you follow the provided example?
see the relevant part in the screenshot below
Pseudo Code
if has appear on top permission
then continue with the logic
else open appear on top settings for the user to enable the permission
Taifun
It appears that by adding the set taifunalarmmanager.autostart to true first before calling the .hasAppearOnTopPermission did the trick. It now behaves as expected.
looks good
except of the empty socket here
also what are you planning to do after an alarm?
Always send a notification or always autostart your app or is this depending on the medicament?
Taifun