From 086175d1146f6fb69d7fe944a64798102da34b86 Mon Sep 17 00:00:00 2001 From: Nullptr Date: Sun, 22 Feb 2026 08:22:21 +0100 Subject: [PATCH 1/4] Add getRunningTargets API --- .../aidl/io/github/libxposed/service/HookedProcess.aidl | 8 ++++++++ .../aidl/io/github/libxposed/service/IXposedService.aidl | 2 ++ .../java/io/github/libxposed/service/XposedService.java | 9 +++++++++ 3 files changed, 19 insertions(+) create mode 100644 interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl diff --git a/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl b/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl new file mode 100644 index 0000000..1e705a3 --- /dev/null +++ b/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl @@ -0,0 +1,8 @@ +package io.github.libxposed.service; + +parcelable HookedProcess { + String packageName; + int pid; + int uid; + boolean upToDate; +} diff --git a/interface/src/main/aidl/io/github/libxposed/service/IXposedService.aidl b/interface/src/main/aidl/io/github/libxposed/service/IXposedService.aidl index 58fcae8..d1de04f 100644 --- a/interface/src/main/aidl/io/github/libxposed/service/IXposedService.aidl +++ b/interface/src/main/aidl/io/github/libxposed/service/IXposedService.aidl @@ -1,4 +1,5 @@ package io.github.libxposed.service; +import io.github.libxposed.service.HookedProcess; import io.github.libxposed.service.IXposedScopeCallback; interface IXposedService { @@ -23,6 +24,7 @@ interface IXposedService { List getScope() = 10; oneway void requestScope(String packageName, IXposedScopeCallback callback) = 11; String removeScope(String packageName) = 12; + List getRunningTargets() = 13; // remote preference utilities Bundle requestRemotePreferences(String group) = 20; diff --git a/service/src/main/java/io/github/libxposed/service/XposedService.java b/service/src/main/java/io/github/libxposed/service/XposedService.java index 817aac6..151238a 100644 --- a/service/src/main/java/io/github/libxposed/service/XposedService.java +++ b/service/src/main/java/io/github/libxposed/service/XposedService.java @@ -263,6 +263,15 @@ public String removeScope(@NonNull String packageName) { } } + @NonNull + public List getRunningTargets() { + try { + return mService.getRunningTargets(); + } catch (RemoteException e) { + throw new ServiceException(e); + } + } + /** * Get remote preferences from Xposed framework. If the group does not exist, it will be created. * From 451cc4e6f4c7039f489d8e04befd140165a73c71 Mon Sep 17 00:00:00 2001 From: Nullptr Date: Sun, 22 Feb 2026 08:38:21 +0100 Subject: [PATCH 2/4] Reorder fields --- .../main/aidl/io/github/libxposed/service/HookedProcess.aidl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl b/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl index 1e705a3..f919e2d 100644 --- a/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl +++ b/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl @@ -2,7 +2,7 @@ package io.github.libxposed.service; parcelable HookedProcess { String packageName; - int pid; int uid; + int pid; boolean upToDate; } From 64e1e0ecbfd79cd64f208cbf6de096540ddaa505 Mon Sep 17 00:00:00 2001 From: Nullptr Date: Sun, 22 Feb 2026 08:45:57 +0100 Subject: [PATCH 3/4] Use processName instead of packageName --- .../main/aidl/io/github/libxposed/service/HookedProcess.aidl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl b/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl index f919e2d..923a0da 100644 --- a/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl +++ b/interface/src/main/aidl/io/github/libxposed/service/HookedProcess.aidl @@ -1,8 +1,8 @@ package io.github.libxposed.service; parcelable HookedProcess { - String packageName; int uid; int pid; + String processName; boolean upToDate; } From 3e61fe151b0955197794635cc5e642974cfc1065 Mon Sep 17 00:00:00 2001 From: Nullptr Date: Sun, 22 Feb 2026 08:48:55 +0100 Subject: [PATCH 4/4] Add docs --- .../java/io/github/libxposed/service/XposedService.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/service/src/main/java/io/github/libxposed/service/XposedService.java b/service/src/main/java/io/github/libxposed/service/XposedService.java index 151238a..daa8c57 100644 --- a/service/src/main/java/io/github/libxposed/service/XposedService.java +++ b/service/src/main/java/io/github/libxposed/service/XposedService.java @@ -263,6 +263,13 @@ public String removeScope(@NonNull String packageName) { } } + /** + * Get a list of currently running processes that are hooked by the module. Note that one app may + * have multiple processes, and you should use uid instead of processName to identify apps. + * + * @return The list of hooked processes + * @throws ServiceException If the service is dead or an error occurred + */ @NonNull public List getRunningTargets() { try {