Open Source β€’ Background Tasks: Itoo πŸš€

Ha, I did not set the property through the blocks. I keep forgetting that even a foreground process cannot access the UI.

But, it still does not work. As an app, using the timer, works. As a process, the timer procedure, I don't think executes.

What happens if you remove the if condition and send a notification regularly to report the battery status? Does that work?

Taifun

I disabled the if condition, and have a notification. With the x variable in the timer procedure, it does not seem to work at all.
If I remove the x variable in the timer procedure as well as the if condition, the notification shows every second, even though timer interval is set to 30000.

There's one more constraint, avoid using Global variables all together, you are limited to only what happens in the procedure.

Move the property block "TimerInterval" with the value "30000" over to the procedure "timer" before the if-else condition check.

Itoo 3

This Itoo update includes a wide range of internal, and functional enhancements that improves the overall foreground and background processing

Behavior changes

  • Optimisation of internal Itoo framework to work efficiently

  • Functional stability to work seamlessly

  • StopProcess and StopService blocks are unified into a single block StopProcess

    StopProcess

    • Ends the current foreground/background service, can be called both from inside/outside the background service

Functional changes

  • Added POST_NOTIFICATIONS permission

  • Added a way for one way communication b/w the foreground/background services

    RegisterBroadcast

    • Registers a broadcast with a name and a procedure as a listener.
    • In simple, this will listen to a particular event that will be sent by the application outside the foreground/background service.
    • Corresponding procedure must include an argument that will contain the message sent.
    • To be used inside the foreground/background service.

    Broadcast

    • Broadcasts a message to the foreground/background service, message can be anything

    UnregisterBroadcast

    • Unregisters the broadcast listener previously registered

    ProcessRunning

    • Returns true if a foreground process is active

There are a lot more changes internally :-) but simply not relevant to know

xyz.kumaraswamy.itoo.aix (62.8 KB)

7 Likes
1 Like

I want to run notifications in background, but not working.

Try the example fromthe first post

Taifun

1 Like

1- The "Clock test" notification can't be removed from my phone, unless I remove app.
How to make it removable ?

2- And Simple notifications created by Itoo NOT opening the app when clicked.

That's the whole point of having a foreground notification, you would need to ask the user to supress or hide the particular channel.

You would need to use the Modified Notification Style Extension to be able to change the functionality of the notification by updating the notification.

1 Like

I'm already using the Modified Notification Style Extension :

How to to change the functionality of the notification by updating the notification ?

1 Like

Use the simple notification block with the id set to 123321 if you want to update Itoo's foreground notification.

Not working, my blocks:

What is not working?

Simple notifications created by Itoo NOT opening the app when clicked.

I'll check and let you know about that

1 Like

I have gotta say, I am also running into the same issue :confused: I am wondering if there is a bug/regression with the last release of ltoo?

I am trying to replicate the notification example as well, and here are my observations:

  • I am using the latest version (released on 10/22), and I don't have the "Notification" or "SimpleNotification" blocks that others seem to have.
  • I made a test project and duplicated the notification example (except for the notification block in the timer function, since I don't have it showing up on mine). My button2 text never turned to "timer" meaning that creating the process never called the clock procedure.
  • Similarly, my label2 text never became a random integer, because it was never called.

Hi, thats because you cannot interact with the Visible component from Itoo.

I see what you are saying. I went ahead and added the notification extension, and using the simpleNotification now in an attempt to see some life out of the background process, but still no luck. Is there anything obviously wrong with the blocks?

Post your project .aia here, so that I can look into it.

1 Like