This is a false positive that commonly occurs with PyInstaller executables. Here's why:
- PyInstaller behavior: PyInstaller bundles Python and all dependencies into a single executable, which can trigger heuristic detection
- Unsigned executable: The executable isn't code-signed with a certificate, making Windows more suspicious
- ADB interaction: The tool interacts with ADB (Android Debug Bridge), which antivirus software may flag as suspicious
- New executable: Windows Defender is more likely to flag new, uncommon executables
Yes, it's completely safe. Here's how you can verify:
- Source code is open: All source code is available in this repository for inspection
- Build process is transparent: GitHub Actions builds are public and auditable
- No network activity: The tool only communicates with your connected Android device via ADB
- No system modifications: Only removes apps you explicitly select
- Open Windows Security
- Go to "Virus & threat protection"
- Click "Manage settings" under "Virus & threat protection settings"
- Click "Add or remove exclusions"
- Add the downloaded executable file
Instead of the executable, run from source:
git clone https://github.com/PixelCode01/UIBloatwareRegistry.git
cd UIBloatwareRegistry
python main.py
git clone https://github.com/PixelCode01/UIBloatwareRegistry.git
cd UIBloatwareRegistry
pip install pyinstaller
python build_spec.py
pyinstaller android-bloatware-remover.spec
- Check file hash: Compare with hashes provided in releases
- Scan with multiple engines: Use VirusTotal.com to scan with 60+ antivirus engines
- Review source code: Inspect the code before running
- Test in VM: Run in a virtual machine first if concerned
If you find a legitimate security issue, please:
- Do NOT open a public issue
- Email security concerns to the repository owner
- Provide detailed information about the vulnerability
- Allow time for the issue to be addressed before public disclosure
We are working on implementing code signing to reduce false positives. This requires:
- Purchasing a code signing certificate
- Setting up automated signing in the build process
- Establishing trust with certificate authorities
- Always download from official releases: Only download from GitHub releases page
- Verify checksums: Compare file hashes when provided
- Use test mode first: Run with
--test
flag to verify functionality - Keep backups: Always backup your device before removing apps
- Review what you're removing: Understand each package before removal
- Connects to Android devices via ADB
- Lists installed packages
- Removes selected packages using
adb shell pm uninstall
- Creates backup files locally
- Logs operations for troubleshooting
- Access the internet (except for ADB communication)
- Modify system files on your computer
- Install anything on your computer
- Send data to external servers
- Access personal files or data
adb devices # List connected devices
adb shell getprop ro.product.brand # Get device brand
adb shell pm list packages # List installed packages
adb shell pm uninstall --user 0 <pkg> # Remove package
All commands are standard ADB operations used by Android developers worldwide.