App Manager
Yet another Android package manager and viewer, but...
- Copylefted libre software (GPLv3+)
- Material design (and a nice UI)
- No unnecessary permissions
- Does not connect to the Internet (the permission is required for ADB mode)
- Displays as much info as possible in the main window
- Lists activities, broadcast receivers, services, providers, permissions, signatures, shared libraries, etc. of any app
- Launch (exportable) activities, create (customizable) shortcuts
- Block any activities, broadcast receivers, services, or providers you like with native import/export as well as Watt and Blocker import support (requires root)
- Revoke permissions considered dangerous (requires root/ADB)
- Disable app ops considered dangerous (requires root/ADB)
- Scan for trackers in apps and list (all or only) tracking classes (and their code dump)
- Generate dynamic manifest for any app
- View/edit/delete shared preferences of any app (requires root)
- Display running processes/apps (requires root/ADB)
- Display your app usage, data usage, and app storage info (requires “Usage Access” permission)
- Share APK files (hence the use of a provider)
- Clear app data or app cache (requires root/ADB)
- Batch operations: clear app data, disable run in background, disable/kill/uninstall apps
- One-click operations: block ads/tracker components, block components by signature, block multiple app ops
…and other minor features such as installing/uninstalling/updating/enabling/disabling apps, displaying app installation info, opening in F-Droid, Aurora Droid or Aurora Store. This single app combines the features of 5 or 6 apps any tech-savvy person needs!
Screenshots
Dark
Light
Build Instructions
- System Requirements: Any computer with 4GB RAM (8GB recommended)
- Operating System: Linux/macOS (no support for Windows)
- Software: Android Studio, Gradle
- Active internet connection
macOS
The following steps are required only if you want to build APKS:
- Install Homebrew:
- Install
bundletool
Linux|GNU
- Install the development tools.
For Debian/Ubuntu: For Fedora/CentOS/RHEL: For Arch/Artix/Manjaro: - Install bundletool-all.jar if you want to build APKS, and make sure it is available as
bundletool
command. A quick way would be to create a filebundletool
in/usr/local/bin
directory with the following content: Make sure to replace/path/to/bundletool-all.jar
with the actual path for bundletool-all.jar. Also, make the file executable:
Clone and Build App Manager
- Clone the repo along with submodules:
--depth 1
argument if you don't want to clone past commits.
You can use the - Open the project AppManager using Android Studio/IntelliJ IDEA. The IDE should start syncing automatically. It will also download all the necessary dependencies automatically provided you have the Internet connection.
- Build debug version of App Manager from Menu > Build > Make Project, or, from the terminal:
The command will generate a universal APK instead of a bundled app../gradlew packageDebugUniversalApk
Create bundled app
In order to create a bundled app in APKS format, build Android App Bundle (AAB) first. Then run the following command:
Replace prePelease
with release
or debug
based on your requirements. It will ask for keystore credentials interactively.
The script above will also generate a universal APK.
Contributing
You are welcome contribute to App Manager! This doesn't mean that you need coding skills. You can help App Manager by creating helpful issues, attending discussions, improving documentations and translations, making icon for icon packs, adding unrecognised libraries or ad/tracking signatures, reviewing the source code, as well as reporting security vulnerabilities. If you are going to contribute to AM with your coding skills, please read the following:
- If you're going to implement or work on any specific feature, please inform me before doing so. Due to the complex nature of the project, integrating a new feature could be challenging.
- You're absolutely welcome to fix issues or mistakes, but App Manager's code base changes a lot almost every day. Therefore, if you are requested to make changes in your pull request but can't address them within 2 (two) days, your pull request may be closed depending on the importance of the request. This instruction will be removed once the code base is stable.
Note: Repositories located in sites other than GitHub are currently considered mirrors and PR/MR submitted there will not be accepted. Instead, you can submit patches (as .patch
files) via email attachment. My email address is muntashirakon [at] riseup [dot] net. Beware that such emails may be publicly accessible in future. GitHub PRs will be merged manually using the corresponding patches. As a result, GitHub may falsely mark them closed instead of merged. Make sure to sign-off your commits.
Donation and Funding
App Manager doesn't support any donations directly. However, if you like my projects (App Manager being one of them), you can buy me a coffee by sending an anonymous donation to one of the following Bitcoin addresses:
33TDkWVv5EgwfKGJk7YaS2Ev1CBzBP9Sav
38bzvWDD99dJhXg9tC4yQEnGdnAKPtwSXG
3FHTxPoYa92dNJK6pkhwyVkMG8Vv3VpGpg
By sending me BTC, you agree that you will not share the transaction info in public i.e. the transaction will remain anonymous, nor will you use it as a leverage to prioritise your requested features. I accept feature requests without any donations, and they are prioritised according to my preferences.
App Manager is open for funding/grants. If you are an organisation interested in funding it you can contact me directly at muntashirakon [at] riseup [dot] net (FINGERPRINT: 7bad37c2981e41f8f6abea7f58f0b4f26c346fce
).