修复事件注册警告问题

This commit is contained in:
lyswhut 2023-11-11 12:11:57 +08:00
parent a9c6099337
commit 453b08bbef
2 changed files with 38 additions and 0 deletions

View File

@ -16,6 +16,8 @@ public class UserApiModule extends ReactContextBaseJavaModule {
private final ReactApplicationContext reactContext; private final ReactApplicationContext reactContext;
private UtilsEvent utilsEvent; private UtilsEvent utilsEvent;
private int listenerCount = 0;
UserApiModule(ReactApplicationContext reactContext) { UserApiModule(ReactApplicationContext reactContext) {
super(reactContext); super(reactContext);
this.javaScriptThread = null; this.javaScriptThread = null;
@ -28,6 +30,23 @@ public class UserApiModule extends ReactContextBaseJavaModule {
return "UserApiModule"; return "UserApiModule";
} }
@ReactMethod
public void addListener(String eventName) {
if (listenerCount == 0) {
// Set up any upstream listeners or background tasks as necessary
}
listenerCount += 1;
}
@ReactMethod
public void removeListeners(Integer count) {
listenerCount -= count;
if (listenerCount == 0) {
// Remove upstream listeners, stop unnecessary background tasks
}
}
@ReactMethod @ReactMethod
public void loadScript(ReadableMap data) { public void loadScript(ReadableMap data) {
if (this.utilsEvent == null) this.utilsEvent = new UtilsEvent(this.reactContext); if (this.utilsEvent == null) this.utilsEvent = new UtilsEvent(this.reactContext);

View File

@ -42,6 +42,8 @@ import java.util.Objects;
public class UtilsModule extends ReactContextBaseJavaModule { public class UtilsModule extends ReactContextBaseJavaModule {
private final ReactApplicationContext reactContext; private final ReactApplicationContext reactContext;
private int listenerCount = 0;
UtilsEvent utilsEvent; UtilsEvent utilsEvent;
UtilsModule(ReactApplicationContext reactContext) { UtilsModule(ReactApplicationContext reactContext) {
@ -56,6 +58,23 @@ public class UtilsModule extends ReactContextBaseJavaModule {
return "UtilsModule"; return "UtilsModule";
} }
@ReactMethod
public void addListener(String eventName) {
if (listenerCount == 0) {
// Set up any upstream listeners or background tasks as necessary
}
listenerCount += 1;
}
@ReactMethod
public void removeListeners(Integer count) {
listenerCount -= count;
if (listenerCount == 0) {
// Remove upstream listeners, stop unnecessary background tasks
}
}
private void registerScreenBroadcastReceiver() { private void registerScreenBroadcastReceiver() {
final IntentFilter theFilter = new IntentFilter(); final IntentFilter theFilter = new IntentFilter();
/** System Defined Broadcast */ /** System Defined Broadcast */