Java Question Example of #Extends in Service

Erel

B4X founder
Staff member
Licensed User
Longtime User
Starting from B4A v6.50 services support the #Extends attribute.

This is useful for libraries that need to extend a service.
The previous solution was to communicate with a B4A service with a specific name. This was more cumbersome and limited.

The #Extends attribute allows the B4A service to directly extend the library service.

An example of the NotificationListener library implemented with #Extends is attached.

The Java source code: https://www.b4x.com/android/forum/attachments/notificationlistener_source-zip.50535/

The B4A project is attached. Notice the manifest editor code which adds the intent filter and permission to the B4A service.
 

Attachments

  • NotificationListenerB4A.zip
    9.1 KB · Views: 1,372
  • NotificationListener.zip
    4.9 KB · Views: 1,048
Last edited:

corwin42

Expert
Licensed User
Longtime User
See the source that Erel attached.

It is
#Extends: Classname

You can implement a Service class in Java that can be used as a base of the B4A service module.

The Watchface library is one of the first libraries which use this method.
The advantage is that it is more flexible so one app can easily support multiple watchfaces with several Service modules.
 

PhilipBrown

Active Member
Licensed User
Longtime User
Thanks very much for this.

See the source that Erel attached.

It is
#Extends: Classname

You can implement a Service class in Java that can be used as a base of the B4A service module.

The Watchface library is one of the first libraries which use this method.
The advantage is that it is more flexible so one app can easily support multiple watchfaces with several Service modules.
 
Top