diff --git a/src/bluetooth/android/localdevicebroadcastreceiver.cpp b/src/bluetooth/android/localdevicebroadcastreceiver.cpp
index 2d2475747604c8ce182b893a780a19d56c3ac679..e3b01987fc54aff669842d9d7debbed8fb6e3af8 100644
--- a/src/bluetooth/android/localdevicebroadcastreceiver.cpp
+++ b/src/bluetooth/android/localdevicebroadcastreceiver.cpp
@@ -244,6 +244,9 @@ void LocalDeviceBroadcastReceiver::onReceive(JNIEnv *env, jobject context, jobje
                                                   "(Ljava/lang/String;)Landroid/os/Parcelable;",
                                                   keyExtra.object<jstring>());
 
+            if (!bluetoothDevice.isValid())
+                return;
+
             //we need to keep a reference around in case the user confirms later on
             pairingDevice = bluetoothDevice;