3
3
import android .app .Activity ;
4
4
import android .app .Application ;
5
5
import android .content .Context ;
6
- import android .content .Intent ;
7
6
import android .graphics .Bitmap ;
8
- import android .nfc .Tag ;
9
7
import android .os .Bundle ;
10
8
import android .util .Log ;
11
9
import android .view .View ;
27
25
28
26
import java .util .concurrent .Callable ;
29
27
30
- import io .flutter .embedding .engine .FlutterEngine ;
31
28
import io .flutter .embedding .engine .plugins .FlutterPlugin ;
32
29
import io .flutter .embedding .engine .plugins .activity .ActivityAware ;
33
30
import io .flutter .embedding .engine .plugins .activity .ActivityPluginBinding ;
34
31
import io .flutter .embedding .engine .renderer .FlutterRenderer ;
35
32
import io .flutter .plugin .common .BinaryMessenger ;
36
- import io .flutter .plugin .common .PluginRegistry ;
37
33
38
34
public class InstabugFlutterPlugin implements FlutterPlugin , ActivityAware {
39
35
private static final String TAG = InstabugFlutterPlugin .class .getName ();
@@ -42,17 +38,21 @@ public class InstabugFlutterPlugin implements FlutterPlugin, ActivityAware {
42
38
43
39
public InstabugFlutterPigeon .InstabugFlutterApi instabugFlutterApi ;
44
40
41
+ private boolean isLastScreenInstabug = false ;
45
42
Application .ActivityLifecycleCallbacks callbacks = new Application .ActivityLifecycleCallbacks () {
46
43
@ Override
47
44
public void onActivityCreated (@ NonNull Activity activity , @ Nullable Bundle savedInstanceState ) {
48
- if (activity == flutterActivity ) {
49
- Log .v (TAG , "onActivityCreated" );
50
- }
45
+
51
46
}
52
47
53
48
@ Override
54
49
public void onActivityStarted (@ NonNull Activity activity ) {
50
+ if (isLastScreenInstabug ) {
51
+ isLastScreenInstabug = false ;
52
+ return ;
53
+ }
55
54
55
+ isLastScreenInstabug = activity .getComponentName ().getClassName ().contains ("com.instabug." );
56
56
if (activity == flutterActivity ) {
57
57
Log .v (TAG , "onActivityStarted" );
58
58
ThreadManager .runOnMainThread (new Runnable () {
@@ -80,16 +80,12 @@ public void onActivityResumed(@NonNull Activity activity) {
80
80
81
81
@ Override
82
82
public void onActivityPaused (@ NonNull Activity activity ) {
83
- if (activity == flutterActivity ) {
84
- Log .v (TAG , "onActivityPaused" );
85
- }
83
+
86
84
}
87
85
88
86
@ Override
89
87
public void onActivityStopped (@ NonNull Activity activity ) {
90
- if (activity == flutterActivity ) {
91
- Log .v (TAG , "onActivityStopped" );
92
- }
88
+
93
89
94
90
}
95
91
@@ -104,7 +100,6 @@ public void onActivityDestroyed(@NonNull Activity activity) {
104
100
}
105
101
};
106
102
107
- PluginRegistry .ActivityResultListener resultListener ;
108
103
private InstabugApi instabugApi ;
109
104
110
105
@ Override
@@ -120,34 +115,13 @@ public void onDetachedFromEngine(@NonNull FlutterPluginBinding binding) {
120
115
@ Override
121
116
public void onAttachedToActivity (@ NonNull ActivityPluginBinding binding ) {
122
117
flutterActivity = binding .getActivity ();
123
- initOnActivityResultListener (binding );
118
+ initOnActivityResultListener ();
124
119
}
125
120
126
- private void initOnActivityResultListener (@ NonNull ActivityPluginBinding binding ) {
127
-
121
+ private void initOnActivityResultListener () {
128
122
Application app = flutterActivity .getApplication ();
129
-
130
123
app .unregisterActivityLifecycleCallbacks (callbacks );
131
124
app .registerActivityLifecycleCallbacks (callbacks );
132
-
133
- // if (resultListener != null) {
134
- // binding.removeActivityResultListener(resultListener);
135
- // }
136
-
137
- // resultListener = new PluginRegistry.ActivityResultListener() {
138
- // @Override
139
- // public boolean onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
140
- // Log.v(TAG, "onActivityResult");
141
- //
142
- //
143
- //
144
- //
145
- // return false;
146
- // }
147
- // };
148
- //
149
- //
150
- // binding.addActivityResultListener(resultListener);
151
125
}
152
126
153
127
@@ -160,7 +134,7 @@ public void onDetachedFromActivityForConfigChanges() {
160
134
@ Override
161
135
public void onReattachedToActivityForConfigChanges (@ NonNull ActivityPluginBinding binding ) {
162
136
flutterActivity = binding .getActivity ();
163
- initOnActivityResultListener (binding );
137
+ initOnActivityResultListener ();
164
138
}
165
139
166
140
@ Override
0 commit comments