started to add ble functions

added ble as sensor to java and c++
added sensorlistener for ble
added ble to observation and onDataSensor in filter
started to work on ble fingerprints for optimization
This commit is contained in:
mail@toni-fetzer.de
2019-06-05 18:04:31 +02:00
parent b9b9d8f9ac
commit 20ae2f5c2a
23 changed files with 1341 additions and 1152 deletions

View File

@@ -0,0 +1,18 @@
#ifdef ANDROID
#include "BLESensorAndroid.h"
extern "C" {
/** called after each successful WiFi scan */
JNIEXPORT void JNICALL Java_indoor_java_BLE_onScanComplete(JNIEnv* env, jobject jobj, jbyteArray arrayID) {
(void) env; (void) jobj;
jsize length = env->GetArrayLength(arrayID);
jbyte* data = env->GetByteArrayElements(arrayID, 0);
std::string str((char*)data, length);
env->ReleaseByteArrayElements(arrayID, data, JNI_ABORT);
BLESensorAndroid::get().handle(str);
}
}
#endif

View File

@@ -5,6 +5,7 @@
#include "../SensorFactory.h"
#include "BLESensorAndroid.h"
#include "WiFiSensorAndroid.h"
#include "AccelerometerSensorAndroid.h"
#include "GyroscopeSensorAndroid.h"
@@ -20,29 +21,33 @@ class SensorFactoryAndroid : public SensorFactory {
public:
WiFiSensor& getWiFi() override {
return WiFiSensorAndroid::get();
}
WiFiSensor& getWiFi() override {
return WiFiSensorAndroid::get();
}
AccelerometerSensor& getAccelerometer() override {
return AccelerometerSensorAndroid::get();
}
AccelerometerSensor& getAccelerometer() override {
return AccelerometerSensorAndroid::get();
}
GyroscopeSensor& getGyroscope() override {
return GyroscopeSensorAndroid::get();
}
GyroscopeSensor& getGyroscope() override {
return GyroscopeSensorAndroid::get();
}
BarometerSensor& getBarometer() override {
return BarometerSensorAndroid::get();
}
BarometerSensor& getBarometer() override {
return BarometerSensorAndroid::get();
}
CompassSensor& getCompass() override {
return CompassSensorAndroid::get();
}
CompassSensor& getCompass() override {
return CompassSensorAndroid::get();
}
GPSSensor& getGPS() override {
return GPSSensorAndroid::get();
}
GPSSensor& getGPS() override {
return GPSSensorAndroid::get();
}
BLESensor& getBLE() override {
return BLESensorAndroid::get();
}
};