summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/plugins/sensors/android/jar/src/org/qtproject/qt5/android/sensors/QtSensors.java3
-rw-r--r--src/plugins/sensors/android/src/androidaccelerometer.cpp3
-rw-r--r--src/plugins/sensors/android/src/androidjnisensors.cpp2
3 files changed, 8 insertions, 0 deletions
diff --git a/src/plugins/sensors/android/jar/src/org/qtproject/qt5/android/sensors/QtSensors.java b/src/plugins/sensors/android/jar/src/org/qtproject/qt5/android/sensors/QtSensors.java
index 5507b07b..efd1ff6d 100644
--- a/src/plugins/sensors/android/jar/src/org/qtproject/qt5/android/sensors/QtSensors.java
+++ b/src/plugins/sensors/android/jar/src/org/qtproject/qt5/android/sensors/QtSensors.java
@@ -73,6 +73,9 @@ public class QtSensors implements SensorEventListener
{
try {
Sensor s = m_sensorManager.getDefaultSensor(sensorType);
+ if (s == null) {
+ return null;
+ }
return s.getName() + " " + s.getVendor() + " v" + s.getVersion();
} catch(Exception e) {
e.printStackTrace();
diff --git a/src/plugins/sensors/android/src/androidaccelerometer.cpp b/src/plugins/sensors/android/src/androidaccelerometer.cpp
index 76aa0278..74b3d6db 100644
--- a/src/plugins/sensors/android/src/androidaccelerometer.cpp
+++ b/src/plugins/sensors/android/src/androidaccelerometer.cpp
@@ -95,5 +95,8 @@ AndroidSensors::AndroidSensorType AndroidAccelerometer::modeToSensor(QAccelerome
break;
}
+ if (type != AndroidSensors::TYPE_ACCELEROMETER && !AndroidSensors::availableSensors().contains(type))
+ type = AndroidSensors::TYPE_ACCELEROMETER;
+
return type;
}
diff --git a/src/plugins/sensors/android/src/androidjnisensors.cpp b/src/plugins/sensors/android/src/androidjnisensors.cpp
index af39e0b6..87889a89 100644
--- a/src/plugins/sensors/android/src/androidjnisensors.cpp
+++ b/src/plugins/sensors/android/src/androidjnisensors.cpp
@@ -113,6 +113,8 @@ namespace AndroidSensors
jstring jstr = static_cast<jstring>(aenv.jniEnv->CallStaticObjectMethod(sensorsClass,
getSensorDescriptionMethodId,
jint(sensor)));
+ if (!jstr)
+ return QString();
const jchar *pstr = aenv.jniEnv->GetStringChars(jstr, 0);
QString ret(reinterpret_cast<const QChar *>(pstr), aenv.jniEnv->GetStringLength(jstr));
aenv.jniEnv->ReleaseStringChars(jstr, pstr);