@tojestproste/caplab-connectivity-state
v1.0.1
Published
Capacitor plugin - odczyt stanu Bluetooth i NFC na Androidzie (on/off, adapter) bez uprawnień do samego sprawdzenia stanu.
Maintainers
Readme
@tojestproste/caplab-connectivity-state
Capacitor plugin (Android) zwracający stan Bluetooth (włączony/wyłączony, nazwa adaptera, wsparcie LE) i NFC (obecność sprzętowa, włączony/wyłączony).
Część zestawu CapLab — narzędzi diagnostycznych dla Androida.
Instalacja
npm install @tojestproste/caplab-connectivity-state
npx cap syncUprawnienia
Brak do samego sprawdzenia stanu on/off — BluetoothAdapter.isEnabled() i NfcAdapter.isEnabled() są bezpieczne bez dodatkowych uprawnień.
Uwaga o nazwie adaptera: odczyt adapterName (getName()) może wymagać BLUETOOTH_CONNECT na Android 12+ (API 31). Plugin łapie ten przypadek — jeśli permission brakuje, pole adapterNameError wyjaśnia dlaczego wartość jest niedostępna, zamiast rzucać wyjątek.
Poza zakresem: skanowanie urządzeń Bluetooth i podłączanie się wymagałoby BLUETOOTH_SCAN/BLUETOOTH_CONNECT — ten plugin tylko odczytuje stan on/off, nie obsługuje tych operacji.
Użycie
import { ConnectivityState } from '@tojestproste/caplab-connectivity-state';
const data = await ConnectivityState.get();
console.log(data.bluetooth.isEnabled); // false
console.log(data.nfc.hardwareSupported); // true
console.log(data.nfc.isEnabled); // trueAPI
get()
get() => Promise<ConnectivityStateResult>Zwraca stan Bluetooth i NFC.
Returns: Promise<ConnectivityStateResult>
Interfaces
ConnectivityStateResult
| Prop | Type |
| -------------- | ----------------------------------------------------------------------------------|
| timestamp | number |
| bluetooth | ConnectivityStateBluetooth |
| nfc | ConnectivityStateNfc |
Przykładowy response
Realny output (Poco X7 Pro, Bluetooth wyłączony):
{
"bluetooth": {
"hardwareSupported": true,
"isEnabled": false,
"stateCode": 10,
"stateName": "off",
"adapterNameError": "Wymaga BLUETOOTH_CONNECT (API 31+)",
"le2MPhySupported": true,
"leCodedPhySupported": true,
"leExtendedAdvertisingSupported": true
},
"nfc": {
"hardwareSupported": true,
"isEnabled": true
}
}Ciekawostka: capability flagi Bluetooth LE (le2MPhySupported itd.) są czytane ze sprzętu, więc pozostają true nawet gdy adapter jest wyłączony (isEnabled: false).
Licencja
MIT
