App Manager v4.0.0-alpha02
Pre-release
Pre-release
MuntashirAkon
released this
19 Sep 04:17
·
274 commits
to master
since this release
For contributors: Building App Manager now requires Java 17 (or later).
Main page
- [Batch ops] Added an option to create a new profile in the “Add to profile” dialog
- [Batch ops] Fixed saving APKS with dependencies
App Details page
- Improved loading performance
- Fixed setting mode for some app ops
In the app ops tab, the toggle button as well as the long click options attempts to alter the associated permission too if it exists. To bypass this behaviour, use “Set custom app op” from the three-dots menu instead.
App Info tab
- Added an option to create a new profile in the “Add to profile” dialog
- Improved performance by loading UI contents in the background
- Hide data usage for other users
Data usage section is hidden if the following conditions are true:
1. OS is Android 6.0 onwards
2. The app does not belong to the current user, and
3. Self or remote UID is not system UID. - Fixed displaying wrong information regarding blocked trackers
- Prevented the app from crashing on attempting to enable battery optimisation of restricted apps
Battery optimisation cannot be enabled for system restricted apps.
Debloater
- Display a loader in details dialog to avoid freezing issues
Editor
- Check if the file is writable during “Save and exit”
- Prevented erroneous display of “Read only” warning for files that support writing
File Manager
- Display “Loading...” as the subtitle instead of showing previous folder info
- Display only the filename in the “Open with…” dialog
- Display progress for batch rename, delete and paste operations
- Improved listing files in a directory, especially Storage Access Framework (SAF)
- Fixed displaying search bar in the “Open with…” dialog
- Fixed retrieving files if a folder contains thousands of files
- Prevented looping indefinitely when an inaccessible file is a symbolic link
Installer
- Fixed installing APK files queued in the background
- Fixed installing some signed APK files
Some signed APKs could not be installed due size mismatch.
Interceptor
- Added a few intent filters related to camera
Profile page
- Added an option to copy profile ID
- Display exit confirmation dialog if there are unsaved changes
- Display previously selected apps on top of the app list
- Display warning before deleting a profile
- Avoid creating duplicate profiles by auto-renaming the newly-created profile
- Fixed displaying backup options in configurations tab
Profiles page
- Added an option to copy profile ID
- Use profile ID instead of profile name for identifying each profile
In profile version 1, there's no difference between profile name and profile ID. But from profile version 2, a new fieldid
shall be introduced which will be decoupled profile name from its ID, making it possible to use any name for profile or rename it. If you use automation, make sure to use profile ID instead of profile name. - Auto-select the configured profile state in “Apply profile” dialog
- Handled applying multiple profiles using a queue
- Moved shortcut handling logic to a different activity
To avoid opening existing tasks from Recents, shortcuts are handled in a separate task. - Optimised updating new or modified profile information
Running Apps page
- Fixed listing processes when some PIDs no longer exist
Security
- Check for zip-slip vulnerability before creating a folder or a symbolic link
- Disabled access to
content://
in WebView - Sanitize user inputs, intents when it involves files and filenames
- Use formatted string for logging to prevent log injections
Settings
- Fixed navigating one step back after a device configuration is changed
UI Tracker
- Added the ability to drag the icon when iconified
- Added the ability to drag the window outside the visible display
- Used 60% transparent window
Usage
- Fixed retrieving mobile data usage in Android 12 and earlier
Others
- Enabled fast scrolling in the user manual page
- Use definite mode of operation
When the mode of operation is set to auto, App Manager will attempt to find the best mode and set it as the current mode instead of “Auto” in order to improve the startup time as well as allow stable access of service via upcoming App Manager SDK. - Use marquee texts in suggestions/dropdown menu
- Use wakelocks in long-running tasks to keep the CPU awake
- Fixed retrieving list of packages in some devices
- Fixed uploading APK files to VirusTotal
- Made setting UID/GID optional while extracting a tar archive
- Prevented the app from crashing due to
forceDexOpt
failing in Android 12
In Android 12,forceDexOpt
always fails due to a bug in the Android framework. As a workaround, the optimisation is done viaperformDexOptMode
imitating whateverforceDexOpt
does.
Full Changelog: v4.0.0-alpha01...v4.0.0-alpha02