ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Communication / BTLE functions
  • Miscellaneous
  • Required versions
  • Required permissions
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
Returns the list of accessible Bluetooth Low Energy devices.
Example
BTLEListDevice(ProcDetectDevice)
...
INTERNAL PROCEDURE ProcDetectDevice(ADevice)
// Process ADevice
END
Syntax
BTLEListDevice(<WLanguage procedure> [, <Timeout>])
<WLanguage procedure>: Procedure name
Name of the WLanguage procedure ("callback") called to list the devices. This procedure is used to get information about the devices found.
This procedure has the following format:
PROCEDURE <Procedure name> (<Device>, <Signal intensity>)

where:
  • <Device> is a btleDevice variable corresponding to the connected device.
  • <Signal intensity> is an integer corresponding to the intensity of signal expressed in decibel per meter.
If the procedure returns False, the analysis of accessible devices will be immediately stopped.
<Timeout>: Optional integer or optional Duration
Timeout for the search (in seconds). This parameter can be:
  • an integer corresponding to the number of seconds,
  • a Duration variable,
  • the duration in a readable format (e.g., 1 s).
If this parameter is not specified, the default timeout is set to 10 seconds.
Remarks

Miscellaneous

If BTLEListDevice is called when an analysis is in progress, the previous analysis will be stopped and a new analysis will be started.

Required versions

  • Android Android applications:
    • Bluetooth Low Energy WLanguage functions are only available on devices with Android 4.3 or later (api level 18).
    • A fatal error occurs if the function is used with an earlier system version.
    • To determine the version of Android the application is running on, use SysAndroidVersion.
  • iPhone/iPadIOS WidgetMac Catalyst iOS applications:
    The WLanguage Bluetooth Low Energy functions are available for the devices running iOS 9.
  • Windows WINDEV applications:
Android

Required permissions

The call to this function modifies the permissions required by the application.
Required permissions:
  • BLUETOOTH: this permission allows the applications to connect to the Bluetooth services.
  • ACCESS_COARSE_LOCATION: this permission allows an application to access an undefined location (Cell-ID, WiFi).
Android 11 specific case: This function requires the ACCESS_BACKGROUND_LOCATION permission to access the device's location.
This permission allows using the function when the application is in the background.
If the application needs to use background location:
  • Manually add the "ACCESS_BACKGROUND_LOCATION" permission in the Android application generation wizard.
  • Explicitly request background location permission with PermissionRequest. For example:
    PermissionRequest(permBackgroundLocation, Callback)
    INTERNAL PROCÉDURE Callback(p is Permission)
    IF p.Granted THEN
    // Functions that require background location access can be used
    END
    END
A window allows users to:
  • allow access to the device location while the application is in the background,
  • allow access to the location only while the application is in use,
  • deny access to the location. The user can also change these permissions at any time in the Android settings.

Remarks:
  • Follow Google's guidelines for applications that require background location access. For more details, see https://support.google.com/googleplay/android-developer/answer/9799150. If these conditions are not met (especially user information requirements), applications may not be accepted for publication on Google Play.
  • The background location permission should only be requested if the location permission has been granted. Otherwise, PermissionRequest will fail.
  • If the option chosen by the user for the background location access request is more restrictive than the option chosen for the location access request, the application will be automatically restarted.
  • On devices running Android 10 or earlier, if location permission has been granted to the application, the background location permission will be granted without displaying a window.
Related Examples:
WM Bluetooth 4 Cross-platform examples (WINDEV Mobile): WM Bluetooth 4
[ + ] This example explains how to use the Bluetooth Low Energy functions (Bluetooth LE): BTLExxx.

It is an application allowing you to find the nearby BTLE devices, to connect to them and to interact with the proposed services.
Business / UI classification: Business Logic
Component: wd290com.dll
Minimum version required
  • Version 21
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 06/27/2023

Send a report | Local help