AM Debug v4.0.0-beta02 Run#2836
LogViewer Enable keyword-based message filtering
Apart from considering any non-keyword texts as message query, enable a keyword-
based filtering option: msg. This allows the message filtering to include exact
and regular expression-based filtering along with inverse filtering. E.g., any
logs containing the text "secret" can be filtered out by using -msg:secret.
This is equivalent to Android Studio's
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
LogViewer Enable keyword-based message filtering
Apart from considering any non-keyword texts as message query, enable a keyword-
based filtering option: msg. This allows the message filtering to include exact
and regular expression-based filtering along with inverse filtering. E.g., any
logs containing the text "secret" can be filtered out by using -msg:secret.
This is equivalent to Android Studio's
message keyword filtering.Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
👍4❤1
AM Debug v4.0.0-beta02 Run#2838
LogViewer Add UID and package filtering in Android 7 onwards
UID filtering can be utilized using the
UID and its named owner. For example, to filter logs from the Shell user, either
argument is an non-regex integer, an exact match is performed. Otherwise the
typical rules apply.
Package name filtering can be utilized using the
example,
logs produced by App Manager release variant.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
LogViewer Add UID and package filtering in Android 7 onwards
UID filtering can be utilized using the
uid keyword. It supports both numericUID and its named owner. For example, to filter logs from the Shell user, either
uid:2000 or uid=:shell can be used (equal sign is for exact match). If theargument is an non-regex integer, an exact match is performed. Otherwise the
typical rules apply.
Package name filtering can be utilized using the
pkg keyword (equivalent topackage keyword in Android Studio) which retains all the typical rules. Forexample,
pkg=:io.github.muntashirakon.AppManager can be used to filter thelogs produced by App Manager release variant.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
❤3
AM Debug v4.0.0-beta02 Run#2839
LogViewer Add UID and package filtering options in the "Search by" dialog
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
LogViewer Add UID and package filtering options in the "Search by" dialog
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
❤3
AM Debug v4.0.0-beta02 Run#2840
LogViewer Display UID and package name in the extended log
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
LogViewer Display UID and package name in the extended log
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
❤2
App Manager now supports almost every logcat feature from Android Studio with a few exceptions:
1. It does not support Android Studio's
2. App Manager cannot support uid and package filtering in Android 5, 5.1, and 6.0 due to logcat not returning the UID associated with a log entry. There is, however, a workaround to this issue: retrieve the UID by reading the stat file of the PID. But like the previous point, this has an impact on the speed of the log viewer, hence, not explored. Client-side caching may be explored in the future, but considering the number of users, this may not be implemented at all.
3. Unlike Android Studio, App Manager supports UID based filtering which has many use-cases for our users.
4. App Manager does not support
1. It does not support Android Studio's
process keyword. This is because fetching real time process info has an impact on the overall speed of the log viewer. This is also not that important considering you can perform a PID based filtering from the running apps page.2. App Manager cannot support uid and package filtering in Android 5, 5.1, and 6.0 due to logcat not returning the UID associated with a log entry. There is, however, a workaround to this issue: retrieve the UID by reading the stat file of the PID. But like the previous point, this has an impact on the speed of the log viewer, hence, not explored. Client-side caching may be explored in the future, but considering the number of users, this may not be implemented at all.
3. Unlike Android Studio, App Manager supports UID based filtering which has many use-cases for our users.
4. App Manager does not support
level, is, name keywords as well as any explicit logical operations. The first three keywords aren't applicable to App Manager, because we already provide such options albeit in a different way (as required by a proper GUI viewer). Although explicit logical operations such as &, |, and parenthesis aren't supported, it already supports implicit & operations and explicit not operations.❤11👍7😱1🎉1
AM Debug v4.0.0-beta02 Run#2841
Refactor Use Collator to sort app labels
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Refactor Use Collator to sort app labels
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
👍4❤2🔥1
AM Debug v4.0.0-beta02 Run#2842
Refactor Use alphanumeric sort instead of alphabetical sort
Alphabetical sort does not understand numerals. Therefore, name1, name2, name10
are sorted as name1, name10, name2 which is not preferable in some cases such as
ordering the files in a directory. Instead, alphanumeric sort is used.
For alphanumeric sort, we have borrowed the implementation by David Koelle1
instead of the traditional, expensive regular expression-based implementation.
1: http://www.davekoelle.com/alphanum.html
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Refactor Use alphanumeric sort instead of alphabetical sort
Alphabetical sort does not understand numerals. Therefore, name1, name2, name10
are sorted as name1, name10, name2 which is not preferable in some cases such as
ordering the files in a directory. Instead, alphanumeric sort is used.
For alphanumeric sort, we have borrowed the implementation by David Koelle1
instead of the traditional, expensive regular expression-based implementation.
1: http://www.davekoelle.com/alphanum.html
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
❤5🎉2
AM Debug v4.0.0-beta02 Run#2843
Backup Fix restoring app data due to sorting issue
Use alphanumeric sorting for listing the part files.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Backup Fix restoring app data due to sorting issue
Use alphanumeric sorting for listing the part files.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
❤6👍3
AM Debug v4.0.0-beta02 Run#2845
Settings Improve "About the device" dialog
New items:
- OS Build number
- Graphics model
- Vulkan version
- Battery technology (Li-ion/Li-poly)
- Estimated battery capacity (AKA real battery capacity)
- Battery health
- Battery cycle count (Android 14+)
Fix: Report estimated battery capacity as the default capacity if the vendor
does not provide a battery capacity spec.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Settings Improve "About the device" dialog
New items:
- OS Build number
- Graphics model
- Vulkan version
- Battery technology (Li-ion/Li-poly)
- Estimated battery capacity (AKA real battery capacity)
- Battery health
- Battery cycle count (Android 14+)
Fix: Report estimated battery capacity as the default capacity if the vendor
does not provide a battery capacity spec.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
❤5👍3
AM Debug v4.0.0-beta02 Run#2846
Settings Add more security properties in "About the device" dialog
- dm-verity
- verified boot
- AVB version
- Bootloader lock/unlock (only when AVB is enabled)
- Debuggable OS
- Android KeyStore features: software, hardware, StrongBox
- Encryption algorithms supported by hardware- and StrongBox-backed keystore.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
Settings Add more security properties in "About the device" dialog
- dm-verity
- verified boot
- AVB version
- Bootloader lock/unlock (only when AVB is enabled)
- Debuggable OS
- Android KeyStore features: software, hardware, StrongBox
- Encryption algorithms supported by hardware- and StrongBox-backed keystore.
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
👍7❤4