|
3 | 3 | import android.annotation.SuppressLint; |
4 | 4 | import android.content.Context; |
5 | 5 |
|
| 6 | +import io.flutter.embedding.engine.plugins.activity.ActivityAware; |
| 7 | +import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding; |
| 8 | + |
6 | 9 | import com.onesignal.OSDeviceState; |
7 | 10 | import com.onesignal.OSEmailSubscriptionObserver; |
8 | 11 | import com.onesignal.OSEmailSubscriptionStateChanges; |
@@ -42,6 +45,7 @@ public class OneSignalPlugin |
42 | 45 | extends FlutterRegistrarResponder |
43 | 46 | implements FlutterPlugin, |
44 | 47 | MethodCallHandler, |
| 48 | + ActivityAware, |
45 | 49 | OneSignal.OSNotificationOpenedHandler, |
46 | 50 | OneSignal.OSInAppMessageClickHandler, |
47 | 51 | OSSubscriptionObserver, |
@@ -96,12 +100,29 @@ private void onDetachedFromEngine() { |
96 | 100 | OneSignal.setInAppMessageClickHandler(null); |
97 | 101 | } |
98 | 102 |
|
| 103 | + @Override |
| 104 | + public void onAttachedToActivity(@NonNull ActivityPluginBinding binding) { |
| 105 | + this.context = binding.getActivity(); |
| 106 | + } |
| 107 | + |
| 108 | + @Override |
| 109 | + public void onDetachedFromActivity() { |
| 110 | + } |
| 111 | + |
| 112 | + @Override |
| 113 | + public void onReattachedToActivityForConfigChanges(@NonNull ActivityPluginBinding binding) { |
| 114 | + } |
| 115 | + |
| 116 | + @Override |
| 117 | + public void onDetachedFromActivityForConfigChanges() { |
| 118 | + } |
| 119 | + |
99 | 120 | // This static method is only to remain compatible with apps that don’t use the v2 Android embedding. |
100 | 121 | @Deprecated() |
101 | 122 | @SuppressLint("Registrar") |
102 | 123 | public static void registerWith(Registrar registrar) { |
103 | 124 | final OneSignalPlugin plugin = new OneSignalPlugin(); |
104 | | - plugin.init(registrar.context(), registrar.messenger()); |
| 125 | + plugin.init(registrar.activeContext(), registrar.messenger()); |
105 | 126 |
|
106 | 127 | // Create a callback for the flutterRegistrar to connect the applications onDestroy |
107 | 128 | registrar.addViewDestroyListener(new PluginRegistry.ViewDestroyListener() { |
|
0 commit comments