Both BLE & BluetoothLE plugins seem not to be loaded at all

Hi there!
I just arrived to Ionic framework because I’m using angular framework and I wanted to build a simple bluetooth application. My problem is that while I have used both BLE and BluetoothLE plugins, when trying to install my app I got no warning that the current app is using bluetooth and needs my permissions to use it.

The target Android version that I want to use is the 9 and thus I installed the 28 Android SDK and added the following lines to my config.xml

 <platform name="android">
        <preference name="android-minSdkVersion" value="27" />
        <preference name="android-targetSdkVersion" value="28" />
        ...

The I installed the BLE plugin using the commands that docs suggest and after running them I realized that there was no corresponding plugin entry to the config.xml (Is that expected). So I added on at the end like this

<plugin name="cordova-plugin-ble-central" spec="1.2.4" />

Then I imported at one of my modules the following line import { BLE } from '@ionic-native/ble/ngx'; and I added the BLE also to the providers list of the same module.

Finally I created a service of mine which is imported at a specific page and contains:

import { Injectable } from '@angular/core';
import { LogsService } from '@services/logs.service';
import { BLE } from '@ionic-native/ble/ngx';

@Injectable({
  providedIn: 'root'
})
export class BluetoothService {

  constructor(
    private logs: LogsService,
    private ble: BLE
  ) {
    this.initializeBluetooth();
  }

  initializeBluetooth() {
    this.logs.add('initializing BLE...');
     this.ble.scan([], 5)
     .subscribe(
       device => this.logs.add(JSON.stringify(device)),
       error => this.logs.add(JSON.stringify(error))
     );
  }
}

I tried the same with BluetoothLE plugin with some changes in the config.xml and the service files.

At the end I’m running ionic cordova build android --debug to produce an apk file that I’m using it to install it to my device (Samsung A20e)

At logs I can see the Initializing BLE… text but nothing else. Never asked for bluetooth permissions or to turn it on.

So am I missing something? Am I doing something that wrong? I tried many different combinations in order to figure out what is happening but no luck so far.

Any idea or suggestion would be appreciated.

If you’re new to Ionic, you may wish to at least look at Capacitor as an alternative to Cordova. In any event, I suspect you may need to wait for Platform.ready() to resolve before attempting to interact with the BLE plugin.