App Manager | CHANNEL – Telegram
#unstable #alpha #release
App Manager v3.2.0-alpha01

What's New
- New logo for App Manager!
- Added a dedicated page for debloating the phone
Debloating profiles were available as “Presets” in the Profiles page which has now been replaced with the Debloater page which can be accessed from the three-dots menu in the Main page.

The list is taken from UAD project and kept intact for now.

Colour codes for the list:
- Dark cyan: The app is safe to remove. It does not necessarily mean that the app should be removed as it is always up to the preferences of the user
- Sand colour: The app is safe to remove, but removing it might break one or more features
- Orange: The app may or may not be safe to remove
- Red: The app is not safe to remove. It is not clear as to why these apps are listed in the UAD list.

Batch operations:
- Uninstallation
- Enable/disable
- Save APK
- Create new profile
- Add to profile.

In addition to the typical search option, there are several filtering options available in this page:
1. Categories: AOSP, OEM, Carrier/ISP, Google, Miscellany and Pending
2. Types: Safe (i.e. safe to remove), Replace (i.e. should be replaced with alternatives), Caution (i.e. generally safe to remove but no guarantees), Unsafe (may cause bootloop)
3. Other: User apps, System apps (mutually exclusive), Installed apps and Uninstalled apps (mutually exclusive).


- Integrated code editor within App Manager
Manifest viewer, code viewer, etc. have been replaced with this new editor.

Among other regular features, the editor includes proper syntax highlighting, advanced searching options.


- Added options for runtime optimization in Android 7 or later
This option is available for all apps in the 1-click ops page and individual app in the three-dots menu in the app info tab.

Features:
- Set Compile filters such as speed-profile or everything-profile
- Compile layout resources
- Immediate optimization of DEX, i.e. somewhat similar to
pm force-dex-opt

- [Main page] Replaced log viewer, sys config, Termux, etc. with Labs
Labs is a new page where various handy tools are listed. They include Sys Config, Log Viewer, Terminal (experimental), File Manager (experimental), UI Tracker, Interceptor and Code Editor.

- [Backup/restore] Enable experimental support for Zstandard (ZSTD) compression
This option should only be used for testing purposes.

- [App Info tab] New tag: Open links
“Open links” is displayed for apps capable of opening links from the verified domains without any user intervention. This feature, added in Android 12, has raised privacy as well as usability concerns, because it promotes tracking and reduce user's freedom of choice. Therefore, in active state, that is, when the app is able to open the links directly, this tag will have a “red” background (otherwise, it will have a “green” background).

On clicking the tag, a list of supported domains will be displayed in a dialog (although not all domains can be opened by default). If the user has enough permissions, an option to enable/disable the behaviour will be displayed. Otherwise, an option to open the app details page in the Android Settings app will be displayed.


- [App Info tab] New tag: Static shared library
The tag is displayed for static shared libraries, that is, the apps with static-library tag in their manifest files, requires root or ADB. Clicking on the tag displays a dialog with a list of libraries installed under the same package name, and offer the user to uninstall the selected libraries.

- [Installer] Added the option to align APK files before signing
When APK signing is enabled, enabling this option will ensure that the contents of the APK are aligned properly before the APK is signed. Since it doesn't modify the contents of the APK, the option is enabled by default.

- [1-Click Ops page] Added option to uninstall apps that were previously uninstalled without clearing data.
19🔥8👍4🥰2
App Manager | CHANNEL
#unstable #alpha #release App Manager v3.2.0-alpha01 What's New - New logo for App Manager! - Added a dedicated page for debloating the phone Debloating profiles were available as “Presets” in the Profiles page which has now been replaced with the Debloater…
1-Click Ops
- Replace “Block components…” with “Block/unblock components…”
From now on, components can also be unblocked using the option.

App Info tab
- Split APKs are no longer displayed in “Paths & Directories” section
Split APK info are already displayed in the corresponding tags above this section. There is no reason to display them again in this section.

App Ops
- Prevented crashes in Samsung devices running Android 6.0.1

Code Viewer
- Enabled Smali to Java conversion feature in Android Nougat and earlier

Explorer page
- Fixed opening files with external editor/viewer

Freeze/unfreeze
- Prevented the app from crashing if a shortcut icon is immutable

Installer
- Fixed displaying re-installation prompt for apps that were uninstalled without clearing data

Interceptor page
- Prevented crashes if the shortcut icon is invalid

Main page
- Display static libraries in privileged mode
Static libraries such as Trichrome Library are only visible to system, shell, root and the apps which depend on it. Using privileged mode, it is possible to list them in the Main as well as perform typical operations on them.

For non-rooted users, these libraries are only visible in the “Shared Libs” tab (in App Details page) of the apps that depend on them.
- Display a prompt to fully uninstall apps that were uninstalled without clearing data
- Prevented crashes when the installer feature is disabled

Profile page
- Fixed a crash due to lifecycle issue

Settings page
- Renamed “Layout orientation” to “Layout direction”

Others
- Improved security of the shortcuts created within App Manager
Earlier, opening the shortcuts of exportable activities did not require any authentication. From now on, authentication is required for opening any new shortcuts.
- Fixed parsing the manifest of some apps
- Fixed opening certain shortcuts in Android 13
- Fixed various security issues related to JADX

Full Changelog: https://github.com/MuntashirAkon/AppManager/compare/v3.1.0...v3.2.0-alpha01
37🔥12👍10🥰1
App Manager is now 3 years old!
🎉27730🔥10❤‍🔥7😢3🥰2🕊2👍1🙏1
#stable #release
App Manager v3.1.1

1-click Ops page
- Replaced “Block components…” with “Block/unblock components…”

App Info tab
- Skipped displaying split APKs in “Paths & Directories” section
They're already displayed when the “Splits” tag is clicked.
- Fixed crashes in Android < 11 while fetching the installer of an app
- Fixed fetching installer package in Android 14

App Ops tab
- Fixed crashes in Samsung devices running 6.0.1 and Lenovo devices running 7.1.2

Explorer page
- Fixed opening files with external editor/viewer

Freeze/unfreeze
- Prevented crashing the app if the freeze shortcut icon is immutable/unmodifiable

Interceptor page
- Fixed crashes if the shortcut icon is invalid

Installer page
- Offer to re-install apps that were previously uninstalled without clearing data

Main page
- Offer to fully uninstall apps that were uninstalled without clearing data
- Prevented crashes when the installer feature is disabled

Profiles page
- Fixed a crash due to lifecycle issue

Settings page
- Fixed listing available storages in backup volume selector

Shortcuts
- Improved security of third-party shortcuts
Third-party shortcuts created in the App Info tab redirects via App Manager in order to provide authentication. It also fixed launching certain shortcuts in Android 13 due to mismatched Intent filters.

Others
- Enabled Smali to Java conversion in Android < 8
- Fixed memory leaks while calculating the size of a folder
- Fixed updating uninstalled apps in no-root mode
- Fixed writing to files managed via ContentProvider (instead of a DocumentProvider)
- Prevented crashing due to lifecycle issues in list options dialogs

Full Changelog: https://github.com/MuntashirAkon/AppManager/compare/v3.0.0...v3.1.1
44👍21🎉9👎4🔥4🥰1😢1👀1
GitHub has just approved my profile for GitHub Sponsors! It means you can now donate me directly from GitHub!

Link: https://github.com/sponsors/MuntashirAkon

PS. GitHub Sponsors is linked with my open collective profile. Hence, it automatically handles finances via Open Source Collective, and the same terms apply here as well.
🎉89👍265🔥4🥰4🤩1🤗1
In the light of Telegram’s new policy regarding personalised advertisements (the latest violation of their own policies), I’ve decided to reduce my activities in Telegram. This means the App Manager official group will be discontinued once again. But this time, we have decided to continue our group activities in a Matrix room.

Link: https://matrix.to/#/#appmanager:matrix.org

Guidelines will be the same as before. But in addition to group activities, messages from this channel will also be posted in the group. Telegram channels will be maintained as usual until further notice. I’m investigating a way to move the secondary channels out of Telegram. But the primary channel (@AppManagerChannel) shall be continued indefinitely.
👍71👎14😨13😱4😐4👌3🤨2🤔1🤯1🎉1🤩1
#unstable #alpha #release
App Manager v4.0.0-alpha01

_Due to the massive number of changes, v3.2.x is skipped in favour of v4.0.0. For the same reason the release notes
provided here are incomplete as only the most useful ones are noted._

App Info
- Added a new tag: Bloatware
Clicking on the tag opens a dialog containing denoscription, dependencies, alternatives, etc. like in the Debloater page described below.
- Added a new tag: Xposed
Clicking on the tag opens a dialog with more details:
1. Module name
2. Denoscription
3. Type of module (modern or legacy)
4. Xposed API dependency info
5. Scope (if available statically).
- List SAF files and directories in a user-friendly manner
Instead of a raw representation of the granted URI, display authority, type of file or folder, and the file or folder itself in a meaningful way. It also attempts to retrieve the original file path when possible.

Backup/Restore
- Display backup extras and rules in no-root mode

Debloater
- Display bloatware details on clicking on an item
Current the following information are displayed with visual enhancements:
- App icon (valid only when the app is installed)
- App label
- Package name
- App info button (if the app is installed)
- Tags (list type and removal type for now)
- Warning (if exists)
- Denoscription with references
- Dependencies
- Suggestions/alternatives.
- App list is now taken from android-debloat-list
android-debloat-list is a new project aimed at improving debloating experience by listing the details in a more structured way and list potential alternatives of the bloatware with usability and reproducibility in mind.

Docs
- Fixed App Manager links in the docs

Editor
- Enabled editing files via Code Editor from third-party applications
- Enabled editing AXML (Android APK's binary XML format) files
- Improved memory usage during loading or saving a file
- Fixed clearing texts on configuration changes
- Fixed writing to files that were managed by ContentProvider

Explorer
- Avoided decoding AXML files
Decoding should be done by code editors, not explorers.

Files
- Added a floating action button to create new files, folders and links
It allows creating a few blank documents. They include: text files, PDF, documents (docx/odt), sheet (xlsx/ods), presentation (pptx, odp) and SQLite3 database.
- Added intent-filters that allows opening folders from third-party apps
- Display path navigation on top
Using the path navigation, it is possible to navigate to any parent folders quite easily, or navigate to any arbitrary location using the “Edit” or “Go to” button.
Long clicking on any path also displays a popup menu which can be used to copy the path, open it in a new window or view properties.
- Display thumbnails for supported files
- Implemented all the unimplemented features in popup menus
Implemented copy- and cut-paste options, shortcut creation, multiple selection options such as batch renaming, deletion, cut/copying and sharing. Note that _copy and paste options are experimental and should be handled with care._
- Implemented settings for file manager
Added option to set home directory, remember last opened folder and position, and whether to display the file manager as “Files” in the app drawer like a regular app.
- Added searching in the “Open with” dialog
- Added support for SAF/tree URIs
SAF access is currently very slow and its usage isn't recommended if there are a lot of files in the folder.
- Display folder info (size, file count, etc.) as a subnoscript
- Display helpful messages when a folder is empty, non-existent or invalid
- Implemented modification of access and modification dates, permissions, UID/GID and SELinux context in the properties dialog
- Open resolved symbolic link instead of the link itself
- Remember the selection locations for past opened folders in a session
- Use file overlays to display directories inaccessible in no-root mode
21👍11🔥7🎉4🤩2
App Manager | CHANNEL
#unstable #alpha #release App Manager v4.0.0-alpha01 _Due to the massive number of changes, v3.2.x is skipped in favour of v4.0.0. For the same reason the release notes provided here are incomplete as only the most useful ones are noted._ App Info - Added…
Installer
- Added an option to perform DEX optimisation immediately after installing an app
- Added the ability to modify installer options before installing an app
In the installation dialog, clicking on the settings/cog icon opens a new dialog where the installer options can be temporarily set for the session. Any items queued for the session will retain those temporary options.
- Display installation progress in the notification
In some devices such as Samsung, it takes an indefinite amount of time to verify the app after copying the APK files. For those cases, the progress won't be accurate as it only takes into account the amount of time to copy the files.
- Display “Confirm install” notification even if the app is running in foreground
In no-root mode, when the app is running in foreground, the user may accidentally dismiss the install-confirmation dialog produced by the Android package installer which would either allow the installation to run forever or for a minute until the timeout occurs. To solve the issue, a silent notification is triggered at the same time the dialog is shown so that even if the user accidentally dismisses the dialog, the dialog can still be displayed by clicking the notification.
- Fixed parsing unsigned APK files
- Fixed installing apps for users other than the main profile

Interceptor
- Prevented the app from crashing on creating a shortcut with invalid extras
Shortcuts support only 11 types of data structures. Intents, on the other hand, support any type of data structures. When a shortcut creation is requested, the unsupported data structures are removed from the Intent to avoid crashes.

Labs
- Display “System Config” page in all modes of operation

Main page
- Added a new filtering option “Stopped apps“ to filter the force-stopped apps
- Added filtering by users in the list options
- Added a new batch operation “Optimise” to dex optimisation of the selected apps
- Display user count alongside app ID
If an app is installed in more than one profiles (that is, for multiple users), instead of displaying only the kernel user ID (UID), display the app ID (that is, UID sans the user ID) and user count in the following format:

<user count>+<app ID>


Scanner
- Display link to Pithus report if available
- Calculate file hashes more efficiently
- Fixed scanning external APK files in privileged mode

Settings
- Added options to run App Manager in the background
In Settings > Privacy, two new options have been added:
1. Run App Manager in the background
2. Automatic lockdown
Running App Manager in the background makes the annoying “Initializing” screen go away. Due to possible privacy issues, this option is disabled by default. When automatic lockdown is enabled, App Manager will attempt to lock the app by killing its process. As expected, there are several side effects:
1. All the activities will be closed. They'll be reopened by the system based on how the user was interacting with them
2. All the running operations as well as scheduled or running jobs will be stopped immediately. This might cause data loss if potentially destructive operations are running.
Note: Enabling the latter option does not wipe the memory of App Manager, i.e. it does not prevent a forensic software from scrapping the memory used by App Manager even if the process no longer exists.
- Added option to disable sending notification to the connected devices
The setting is located at “Settings > Advanced > Send notifications to the connected devices” and is enabled by default. Low importance notifications, e.g. ongoing notifications and optional alerts, won't be delivered to the connected devices even if the setting is enabled.
- Fixed saving backup options
- Prevented a crash that occurs on importing the rules if some of them are invalid

UI
- Better handling of application-wide notifications including the progress of various operations
- Display all multi-selection options in a single row with an overflow menu at the end
- Display icons in popup menus
👍13🤩129🔥5🎉1
App Manager | CHANNEL
Installer - Added an option to perform DEX optimisation immediately after installing an app - Added the ability to modify installer options before installing an app In the installation dialog, clicking on the settings/cog icon opens a new dialog where the…
- Display shortcut editor before creating a shortcut along with a preview panel
- Improved layouts of popup and dropdown menus

Usage
- Fetch data usage for all apps in Android 5 and 5.1
- Fetch usage stats and package size info only when the feature is enabled
- Reduced lags by recycling views

Others
- New mode of operation: System (UID 100)
- Enabled backing up data from App Manager via Android-default backup systems
- Improved DEX optimiser
DEX optimiser now works in no-root mode for apps installed with App Manager. In 1-Click Ops page, when DEX optimiser is run, it attempts to optimise all apps in privileged mode. But in unprivileged mode, it only attempts to optimise apps installed by App Manager. The option is also displayed in the App Info tab in no-root mode for apps installed by App Manager.
- Only allow connections from supported online locations
To avoid issues with ADB, localhost is allowed unrestricted connections, but other websites, namely virustotal.com and pithus.org, are restricted via public key pinning (PKP) using network security configuration.
- Replaced the usernames “Main” and “Work” with “This” and “Other”
In no-root mode, usernames cannot be fetched from the system. Hence, “Main” and “Work” are inferred based on the status of the system. However, this can cause issues if the app is installed in the Work profile. Instead, the names “This” and “Other” are used to clarify the situation.
- Schedule cache cleaning job more actively to ensure App Manager's caches are cleared regularly
- Use granted permissions rather than the mode of operation to check the eligibility of a feature
- Prevented crashing in Android 14 due to compatibility issues related to installer
- Prevented crashing in various places due to lifecycle issues

Full list of changes: v3.2.0-alpha01...v4.0.0-alpha01
45👍23🔥10🎉6🏆4
My brand new project, Android Debloat List, is created not only to catalogue potential apps that might be disabled, uninstalled or replaced with FOSS alternatives but also to warn users about the potential danger of using certain system apps. As part of this effort, I’ll also be recording vulnerabilities for system apps. To report a vulnerability, create a new issue with the following information:
1. Package name along with its name/label
2. CVD/CVE (or if not supported, link to the vulnerability)
3. Affected versions (either a list or a range) using version name (optional) and version code
4. Optional comments
5. How it should be dealt (update, remove, replace with alternative, keep due to potential issues)

Why? Because vulnerabilities do not show up in almost any AV software.
🔥131👍7523😱4🤩4👏1🎉1
As announced earlier, App Manager community channel will be discontinued in favour of App Manager community organisation currently hosted in GitHub. You can find these particular instructions in the issues section of Tips and Tricks repository for now. In the future, there will also be a community website. Benefits of this approach:
1. Better searching experience than Telegram
2. Accessible to anyone around the world, not just to the Telegram users
3. Ability to comment on each instruction
4. More community involvements.

Original announcement for community: https://news.1rj.ru/str/AppManagerChannel/145
👍58👎19😐7🤯5👏2🎉1🤩1
#alpha #unstable #release
App Manager v4.0.0-alpha02

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 subnoscript 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 field id 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
👍34🎉6🏆32🥰1
App Manager | CHANNEL
#alpha #unstable #release App Manager v4.0.0-alpha02 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…
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 via performDexOptMode imitating whatever forceDexOpt does.

Full Changelog: https://github.com/MuntashirAkon/AppManager/compare/v4.0.0-alpha01...v4.0.0-alpha02
👍388🤩6🎉4🔥1🥰1