From cf656286f68f29eadc0120b4ffa480895a03cc08 Mon Sep 17 00:00:00 2001 From: Aron Pavel Date: Wed, 20 Apr 2022 01:33:55 +0200 Subject: [PATCH 1/3] Added FlutterPlugin embedding engine --- .../src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java b/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java index d96d2bb..58b4878 100644 --- a/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java +++ b/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java @@ -3,6 +3,7 @@ import io.flutter.plugin.common.EventChannel; import io.flutter.plugin.common.MethodChannel.Result; import io.flutter.plugin.common.PluginRegistry.Registrar; +import io.flutter.embedding.engine.plugins.FlutterPlugin; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; @@ -13,7 +14,7 @@ import android.content.Context; /** AeyriumSensorPlugin */ -public class AeyriumSensorPlugin implements EventChannel.StreamHandler { +public class AeyriumSensorPlugin implements FlutterPlugin, EventChannel.StreamHandler { private static final String SENSOR_CHANNEL_NAME = "plugins.aeyrium.com/sensor"; From bf24dd33cc7ff43b936bc4e4b35b3172e31e3fc6 Mon Sep 17 00:00:00 2001 From: Aron Pavel Date: Wed, 20 Apr 2022 02:12:52 +0200 Subject: [PATCH 2/3] Added override methods --- .../com/aeyrium/sensor/AeyriumSensorPlugin.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java b/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java index 58b4878..af290ba 100644 --- a/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java +++ b/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java @@ -3,6 +3,9 @@ import io.flutter.plugin.common.EventChannel; import io.flutter.plugin.common.MethodChannel.Result; import io.flutter.plugin.common.PluginRegistry.Registrar; +import io.flutter.plugin.common.MethodCall; +import io.flutter.plugin.common.MethodChannel; +import io.flutter.plugin.common.PluginRegistry; import io.flutter.embedding.engine.plugins.FlutterPlugin; import android.hardware.Sensor; import android.hardware.SensorEvent; @@ -19,6 +22,7 @@ public class AeyriumSensorPlugin implements FlutterPlugin, EventChannel.StreamHa private static final String SENSOR_CHANNEL_NAME = "plugins.aeyrium.com/sensor"; private static final int SENSOR_DELAY_MICROS = 1000 * 1000;//16 * 1000; + private static MethodChannel channel; private WindowManager mWindowManager; private SensorEventListener sensorEventListener; private SensorManager sensorManager; @@ -49,10 +53,21 @@ public void onListen(Object arguments, EventChannel.EventSink events) { @Override public void onCancel(Object arguments) { if (sensorManager != null && sensorEventListener != null){ - sensorManager.unregisterListener(sensorEventListener); + sensorManager.unregisterListener(sensorEventListener); } } + @Override + public void onAttachedToEngine(@NonNull FlutterPluginBinding flutterPluginBinding) { + channel = new MethodChannel(flutterPluginBinding.getFlutterEngine().getDartExecutor(), "aeyrium_sensor_plugin"); + channel.setMethodCallHandler(this); + } + + @Override + public void onDetachedFromEngine(FlutterPluginBinding binding) { + channel.setMethodCallHandler(null); + } + SensorEventListener createSensorEventListener(final EventChannel.EventSink events) { return new SensorEventListener() { @Override From 184690fc9fad0327501a44ce4e84b177611ebccb Mon Sep 17 00:00:00 2001 From: Aron Pavel Date: Wed, 20 Apr 2022 02:22:33 +0200 Subject: [PATCH 3/3] Fixed override methods --- .../main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java b/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java index af290ba..d952d52 100644 --- a/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java +++ b/android/src/main/java/com/aeyrium/sensor/AeyriumSensorPlugin.java @@ -58,13 +58,13 @@ public void onCancel(Object arguments) { } @Override - public void onAttachedToEngine(@NonNull FlutterPluginBinding flutterPluginBinding) { - channel = new MethodChannel(flutterPluginBinding.getFlutterEngine().getDartExecutor(), "aeyrium_sensor_plugin"); + public void onAttachedToEngine(@NonNull FlutterPlugin.FlutterPluginBinding binding) { + channel = new MethodChannel(binding.getFlutterEngine().getDartExecutor(), "aeyrium_sensor_plugin"); channel.setMethodCallHandler(this); } @Override - public void onDetachedFromEngine(FlutterPluginBinding binding) { + public void onDetachedFromEngine(@NonNull FlutterPlugin.FlutterPluginBinding binding) { channel.setMethodCallHandler(null); }