ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / Developing for Android
  • Overview
  • Creating an Android Widget window
  • Characteristics of an Android widget window
  • Size of a widget window
  • Update the content
  • Redisplaying the widget window
  • Widget image
  • Programming an Android widget window
  • Opening a widget window
  • Closing a widget window
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Android Widget windows
Overview
An Android application can contain one or more Widget windows. These windows can be displayed on a tablet or phone's home screen.
The information displayed in these windows is updated on a regular basis. Widget windows allow simple interactions with the user.

Creating an Android Widget window

To create an Android Widget window:
  1. Click in the quick access buttons:
    • The new element window appears: click "Window" then "Window".
    • The window creation wizard starts.
  2. In the "Standard" tab, in the "Other platforms" area, select "Blank for widget" and validate.
  3. A new window is created in the editor. Only 3 types of controls are available in Widget windows: Button controls, Static controls and Image controls.
    Caution: The styles defined for the controls of a widget in edit mode will be ignored at runtime. You can only set the background color of the controls and the background image of Button controls.
Remark: You can also change the type of an existing window:
  1. Open the window description (select "Description" in the context menu).
  2. In the "UI" tab, select "Widget (Android/iOS14+)".
  3. Validate.
Characteristics of an Android widget window

Size of a widget window

The size of a widget window is defined by the number of cells it occupies horizontally and vertically. This size can be configured in the "UI" tab of the description window:
The size of a cell is set to 74 pixels for the side (for a dpi of 160).
For a display compatible with most of the devices (phones and tablets), the maximum size should not exceed 4 x 4 cells.
Remark: Widgets created with WINDEV Mobile cannot be resized.

Update the content

Widget windows include a specific event: Refreshing the widget. This event refreshes the widget content. This event is executed at regular time intervals. The refresh frequency is defined in the "UI" tab of the description window.
Remarks:
  • This refresh frequency cannot be less than 30 minutes.
  • WidgetDisplay redisplays the widget and runs the "Refresh widget" event.

Redisplaying the widget window

A widget window is displayed by the process that manages the device's home screen. This display is not always performed. It is refreshed in the following cases:
  • When an instance of the widget is added to the home screen.
  • When a button or image of the widget is tapped.
  • When the content of the widget is updated.
Remark: WidgetDisplay redisplays the widget and runs the "Refresh widget" event.

Widget image

When installing a widget on the desktop, users can see the list of widgets on their computers. This list contains, for each widget, the widget name and the preview image.
The widget preview image is defined in the "UI" tab of the description window.
You can:
  • provide a specific image.
  • genereate a screenshot of the window. In this case, the screenshot is automatically associated with the preview image.
If no image is specified, the icon of the Android application will be automatically used.
Programming an Android widget window

Opening a widget window

You cannot directly open a widget window. The opening functions (OpenSister, OpenChild, Use) will trigger a fatal error if they are used in widget mode.
Widget windows open automatically in the following cases:
  • When the first instance of the widget that corresponds to the window is added to the home screen.
  • After starting the device if at least one instance of the widget is present on the home screen.
  • When the widget is refreshed or when the user interacts with the widget (tap a button, for example).
  • If the process was stopped by the system (if it needs resources, for example).
The following events are executed when a widget window is open:
  • "Global declarations" of the window.
  • "Initialization" event of the controls.
  • "Initialization" event of the window.
  • "Refresh widget".
The "Initialization" event of the project will only be executed before the first widget window of the application is opened. To differentiate the widget-specific code from the application-specific code in this event, use InWidgetMode.

Closing a widget window

You cannot directly close a widget window. Close will trigger a fatal error if it is used in widget mode.
Widget windows are automatically closed when the last instance of the widget is removed from the home screen. The "Close" event of the window is executed when a widget window is closed.
The "Close" event of the project will be executed when the last instance of an application widget is removed from the home screen and there are no more instances of other widgets displayed.
Minimum version required
  • Version 18
Comments
Click [Add] to post a comment

Last update: 06/12/2023

Send a report | Local help