AM Debug v2.7.0 Run#1480
Docs Open docs website if webview is unavailable
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Docs Open docs website if webview is unavailable
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.6.3 Run#1481
Docs Open docs website if webview is unavailable
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Docs Open docs website if webview is unavailable
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1482
AppInfo Display “View in Settings” action if ADB/root unavailable
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AppInfo Display “View in Settings” action if ADB/root unavailable
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1483
AppDetails Enable opening non-exported activities via interceptor
Similar to the exported activities, non-exported activities can also be opened
via interceptor by long clicking on an activity name with root. For an activity
with a permission not granted to App Manager, the activity will be opened with
root. Currently, it's not possible to display result for the activities
launched with root since the ActivityManagerCompat class has not been modified
to handle request code.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AppDetails Enable opening non-exported activities via interceptor
Similar to the exported activities, non-exported activities can also be opened
via interceptor by long clicking on an activity name with root. For an activity
with a permission not granted to App Manager, the activity will be opened with
root. Currently, it's not possible to display result for the activities
launched with root since the ActivityManagerCompat class has not been modified
to handle request code.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1484
Interceptor Enable opening non-exported activities
Currently, it's not possible to display result for the activities launched with
root since the ActivityManagerCompat class has not been modified to handle
request code.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Interceptor Enable opening non-exported activities
Currently, it's not possible to display result for the activities launched with
root since the ActivityManagerCompat class has not been modified to handle
request code.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1485
1ClickOps Add “trim caches from all apps” option
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
1ClickOps Add “trim caches from all apps” option
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1486
Refactor Fix detecting running apps with zygote preload
Apps with zygote preload (zygotePreloadName in AndroidManifest) can assign a
different process name, and the processes started by this zygote process runs
under a different user ID as they are completely isolated from each other.
Because the zygote process name is different from the package name, it isn't
possible to assign these processes to an app simply using the package name.
Instead, user ID is first used to detect the zygote process and then the
conventional package-name-as-a-prefix is used to find out the rest of the
processes created by the zygote process i.e. the child processes. Ideally, the
child processes should be detected by checking whether their parent process ID
belongs to the zygote process, but this procedure isn't followed in order to
reduce complexity.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Refactor Fix detecting running apps with zygote preload
Apps with zygote preload (zygotePreloadName in AndroidManifest) can assign a
different process name, and the processes started by this zygote process runs
under a different user ID as they are completely isolated from each other.
Because the zygote process name is different from the package name, it isn't
possible to assign these processes to an app simply using the package name.
Instead, user ID is first used to detect the zygote process and then the
conventional package-name-as-a-prefix is used to find out the rest of the
processes created by the zygote process i.e. the child processes. Ideally, the
child processes should be detected by checking whether their parent process ID
belongs to the zygote process, but this procedure isn't followed in order to
reduce complexity.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1487
AppDetails Fetch running services from activity manager
Previously,
running services and were matched with the running apps to fetch process IDs.
While dumpsys command could be accessed with android.permission.DUMP without
root/ADB, fetching a list of running apps required root/ADB. This is now
handled in two different ways:
1. In no-root mode, android.permission.DUMP permission (if granted) is still
used to fetch the running services, but this time, the process IDs are
fetched from the dump itself rather than fetching running apps which
required a more privileged permission.
2. In root/ADB mode, the running services are fetched directly from
In the App Info tab, clicking on any running service opens the log viewer with
process ID as the filter. Other behaviours are continued to be the same.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AppDetails Fetch running services from activity manager
Previously,
dumpsys activity services was used to retrieve the list ofrunning services and were matched with the running apps to fetch process IDs.
While dumpsys command could be accessed with android.permission.DUMP without
root/ADB, fetching a list of running apps required root/ADB. This is now
handled in two different ways:
1. In no-root mode, android.permission.DUMP permission (if granted) is still
used to fetch the running services, but this time, the process IDs are
fetched from the dump itself rather than fetching running apps which
required a more privileged permission.
2. In root/ADB mode, the running services are fetched directly from
ActivityManager#getServices().In the App Info tab, clicking on any running service opens the log viewer with
process ID as the filter. Other behaviours are continued to be the same.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1488
Refactor Replace reflection calls using HiddenApiRefinePlugin
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Refactor Replace reflection calls using HiddenApiRefinePlugin
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1489
Main Fix filtering running apps
When running apps were filtered using user ID (UID) but the UID is shared with
more than one packages, incorrect apps were listed. To fix this issue, shared
UIDs are skipped from matching.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Main Fix filtering running apps
When running apps were filtered using user ID (UID) but the UID is shared with
more than one packages, incorrect apps were listed. To fix this issue, shared
UIDs are skipped from matching.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
AM Debug v2.7.0 Run#1490
Main Fix freezing issue after returning from another activity
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Main Fix freezing issue after returning from another activity
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>