Clear uid set on registerUidObserver
This commit is contained in:
parent
ae5f8a70ae
commit
53fec857a0
|
|
@ -36,6 +36,7 @@ import org.lsposed.daemon.BuildConfig;
|
||||||
import org.lsposed.lspd.models.Module;
|
import org.lsposed.lspd.models.Module;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
@ -50,13 +51,17 @@ public class LSPModuleService extends IXposedService.Stub {
|
||||||
private final static String TAG = "LSPosedModuleService";
|
private final static String TAG = "LSPosedModuleService";
|
||||||
|
|
||||||
private final static Set<Integer> uidSet = ConcurrentHashMap.newKeySet();
|
private final static Set<Integer> uidSet = ConcurrentHashMap.newKeySet();
|
||||||
private final static Map<Module, LSPModuleService> serviceMap = new WeakHashMap<>();
|
private final static Map<Module, LSPModuleService> serviceMap = Collections.synchronizedMap(new WeakHashMap<>());
|
||||||
|
|
||||||
public final static String FILES_DIR = "files";
|
public final static String FILES_DIR = "files";
|
||||||
|
|
||||||
private final @NonNull
|
private final @NonNull
|
||||||
Module loadedModule;
|
Module loadedModule;
|
||||||
|
|
||||||
|
static void uidClear() {
|
||||||
|
uidSet.clear();
|
||||||
|
}
|
||||||
|
|
||||||
static void uidStarts(int uid) {
|
static void uidStarts(int uid) {
|
||||||
if (!uidSet.contains(uid)) {
|
if (!uidSet.contains(uid)) {
|
||||||
uidSet.add(uid);
|
uidSet.add(uid);
|
||||||
|
|
|
||||||
|
|
@ -394,6 +394,7 @@ public class LSPosedService extends ILSPosedService.Stub {
|
||||||
| HiddenApiBridge.ActivityManager_UID_OBSERVER_GONE()
|
| HiddenApiBridge.ActivityManager_UID_OBSERVER_GONE()
|
||||||
| HiddenApiBridge.ActivityManager_UID_OBSERVER_IDLE()
|
| HiddenApiBridge.ActivityManager_UID_OBSERVER_IDLE()
|
||||||
| HiddenApiBridge.ActivityManager_UID_OBSERVER_CACHED();
|
| HiddenApiBridge.ActivityManager_UID_OBSERVER_CACHED();
|
||||||
|
LSPModuleService.uidClear();
|
||||||
ActivityManagerService.registerUidObserver(new IUidObserver.Stub() {
|
ActivityManagerService.registerUidObserver(new IUidObserver.Stub() {
|
||||||
@Override
|
@Override
|
||||||
public void onUidActive(int uid) {
|
public void onUidActive(int uid) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue