InstallerOpt
XInstaller seemed to be having issues with MM but it had two features that I really missed:
- Show version information when installing an application, current and new version numbers
- Automatically closing the installer when installation was successful so you don't have to click "Done" or "Open"
So I took the relevant methods from XInstaller and removed everything else that wasn't working. Other features from XInstaller are being added upon request with the following features currently implemented:
- Auto hide install and uninstall
- Auto install and uninstall
- Backup any currently installed application
- Backup APK files during install
- Manage all backups including restore from backups
- Delete APK files after install
- Disable application Force Close dialog
- Disable application verification and signature checking
- Disable system apps
- Disable user applications
- Display package name in app info
- Downgrade apps
- Enable clear data and cache buttons
- Launch app from icon in app info
- Open playstore link from icon in app info
- Show version info on installation window and/or as toast
Original code credit:
Pyler for XInstaller github
hamzahrmalik for initial preference code and layout
hamsterksu over on github for an awesome content provider that wraps sharedpreferences
Matsca09 over on github for unknown source prompt in DirectApkInstall
- Fixed issue that may cause notification to not show
- Force English in module will also use English for version info when installing
- Optimized retrieving preferences from content provider
- Fixed display issue with toast if you weren't showing both version and version code
- Reworked restore backup process logic to be more seamless
- Reworked the way the master switch was implemented as it may not have been respected
- Translations updates
- Fixed newline character in Polish translation
- Fix crashes due to not handling screen rotation correctly
- Master switch to disable all features without having to reboot
- Add notification for app install
- Show current app being parsed when loading backups and applications
- Add dialog when installing an unknown app, credit to Matsca09/DirectApkInstall, now you don't have to enable Unknown Sources in settings
- Restoring backups will override same version/version code install cancellation and unknown sources will be enabled for duration of restore process
- Added filtering in backup/application lists to speed up looking for specific files
- Fixed sorting by date in backup manager
- Removed tons of hard coded strings
- Language translation updates
- Backup/restore/reset InstallerOpt preferences
- Fix issues with LG roms
- Misc code cleanup
Lots of changes so this list may not be exhaustive
- Backup manager with stats on each backup
- Share backups
- Backup any installed application
- Code refactoring and cleanup
- Fixed issue affected Lollipop and below devices from loading the module
- Better ROM detection to control which hooks are applied to certain roms
- Misc fixes and code cleanup
This was tested on TW MM and CM MM 9/12 nightly with no issues so far.
- Fixed missing apps issue with previous build, sorry guys
- Added disable JAR verification
- Added disable signature verification
- Added disable duplicate permission check
- Added disable permission checks - WIP
- Added disable SDK checks - WIP
- Misc fixes
If you are on a CM based ROM I would be careful with this build. If you choose to flash it and upon booting you have missing apps, boot into recovery, navigate to /data/data/de.robv.android.xposed.installer/conf/ and delete enabled_modules.list and modules.list. When you reboot all your xposed modules will be disabled but your apps will be back. Then just uncheck InstallerOpt and reboot to enable your previous module selections.
- Disable signature checking and application verification finally working as intended
- Fixed issue with permissions not showing on CM based roms, thanks pyler and Maxr1998
- Chinese translation by aviraxp, thank you
- Code cleanup and refactoring
- API 15 support added back
- Force English option
- Show version info inline made optional just like toast display
- More error handling
- Backup sanity checks added for chosen folder
- Fixed incorrect method call relating to bootReceiver
- Tweaked Hide FC method to automatically close dialog and FC crashing app, still a WIP but better than before
- Backup folder can be chosen now
- If backup folder is changed, user is offered to move old backups
- Saving to external SD cards is now possible (thanks pylerSM)
- More debugging added
- Alignment fixes for version info display
- Misc code cleanup
- Downgrade apps
- Added option to enable/disable vibrate on auto install complete
- Version display on installer dialog should be resolved
- Vibrate when install completed if using auto install and auto close install
- Misc bugs squashed
- Fixed links in about dialog
- Slovak language update
- Stats menu option to see size of APK backup folder size and delete it if desired
- Minor bug fixes
- Fixed NPE
- Version info can be shown on install dialog now, toast is still an option in case you use auto install
- Backup apks to storage during install
- Delete apks after install from original location such as Download folder
- Permission request for external storage when you open the preferences on MM
- Bug fixes
- Signature check and app verification are able to be used but may not work
- Hide app crash dialog
- Enable system app disabling
- Enable uninstall system apps, long click disable button--test if you can but don't break your phone
- Enable user app state change(enabled/disabled or some may see turn on/turn off), long click to uninstall...the disable button that was previously present in earlier androids is gone so I had to get creative
- Enable uninstall apps with device admin
- Package name display in app info, click the app name to toggle
- Auto install launch the app when install finishes, opposite of auto install close...only one of these can be enabled at a time but the module takes care of that
- Enable debug for all apps--test if you know how
- Show buttons, this should resolve the issue of not being able to click install when the toast is showing
Lots of changes in preference code so all preferences have been reset to avoid conflicts, so after rebooting reenable your preferred settings:
- Enabled show version code
- Added package name toggle in app info by clicking the app label
- Completely recoded preferences to eliminate issues now and in the future
- Added Open in Playstore which opens application in Playstore when you long click the icon in app details
- Enabled dark theme
- Versioning changes
- Reduced file size a little more
- Added launcher icon hiding
- Added auto uninstall
- Reduced APK and storage usage by over 50%
- Added debugging options in preferences, disabled by default