summaryrefslogtreecommitdiffstats
path: root/src/plugins/sensors/android/src/androidjnisensors.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/sensors/android/src/androidjnisensors.cpp')
-rw-r--r--src/plugins/sensors/android/src/androidjnisensors.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/plugins/sensors/android/src/androidjnisensors.cpp b/src/plugins/sensors/android/src/androidjnisensors.cpp
index 6365433c..af39e0b6 100644
--- a/src/plugins/sensors/android/src/androidjnisensors.cpp
+++ b/src/plugins/sensors/android/src/androidjnisensors.cpp
@@ -53,6 +53,7 @@ static jmethodID getSensorListMethodId;
static jmethodID registerSensorMethodId;
static jmethodID unregisterSensorMethodId;
static jmethodID getSensorDescriptionMethodId;
+static jmethodID getSensorMaximumRangeMethodId;
static QHash<int, QList<AndroidSensors::AndroidSensorsListenerInterface *> > listenersHash;
QReadWriteLock listenersLocker;
@@ -119,6 +120,15 @@ namespace AndroidSensors
return ret;
}
+ qreal sensorMaximumRange(AndroidSensorType sensor)
+ {
+ AttachedJNIEnv aenv;
+ if (!aenv.jniEnv)
+ return 0;
+ jfloat range = aenv.jniEnv->CallStaticFloatMethod(sensorsClass, getSensorMaximumRangeMethodId, jint(sensor));
+ return range;
+ }
+
bool registerListener(AndroidSensorType sensor, AndroidSensorsListenerInterface *listener, int dataRate)
{
listenersLocker.lockForWrite();
@@ -214,6 +224,7 @@ static bool registerNatives(JNIEnv *env)
GET_AND_CHECK_STATIC_METHOD(registerSensorMethodId, sensorsClass, "registerSensor", "(II)Z");
GET_AND_CHECK_STATIC_METHOD(unregisterSensorMethodId, sensorsClass, "unregisterSensor", "(I)Z");
GET_AND_CHECK_STATIC_METHOD(getSensorDescriptionMethodId, sensorsClass, "getSensorDescription", "(I)Ljava/lang/String;");
+ GET_AND_CHECK_STATIC_METHOD(getSensorMaximumRangeMethodId, sensorsClass, "getSensorMaximumRange", "(I)F");
return true;
}