[APP][1.6+] SD Maid - System cleaning tool

 5 months ago
source link: https://forum.xda-developers.com/t/app-1-6-sd-maid-system-cleaning-tool.1013063/page-181#post-87061151
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Top Liked Posts

Ive started working on a tool to clean up after apps (inspired by this thread).

Nobody is perfect and android neither.
Apps you have already deleted sometimes leave data behind.
The system constantly creates logs, crash reports and debug files you don't really need.
The market leaves temporary files of downloaded apps behind.
Lets not go on here...

SD Maid is a universal file tool that helps you keep your device neat and tidy.
  • Storage overview
  • Root explorer & search
  • Find & remove left over files from uninstalled apps
  • Freeze, Uninstall, Export or kill apps
  • Toggle autstart entries
  • Find & delete common unnecessary files
  • Clean applications by removing various cache files without loosing any data
  • Find & delete duplicate files
  • Overview over biggest files/directories on your device
  • Optimize your SQL databases
  • Show last modified files
  • and more...
Installation instructions
* Install this like any other app.
* If your device is rooted, you will be asked if you want to grant SD Maid root permission upon its first launch
* It is up to you what you choose, in each case SD Maid will make best possible use of its features.
* Have the SuperUser application remember this choice, repeated prompts can cause unexpected behavior

Download links
SD Maid can either be downloaded from Google Play or direct from my server, appropriate links are collected here. The unlocker for SD Maid Pro can currently only be obtained through Google Play. I really recommend to only use these two sources. If you can't verify that the apk files are original you may put your device at risk.

A detailed changelog can be found on Github and most update release posts also contain some explanation of what's new.

Bugs / Requests
Please use the issue tracker for any kind of bug reports or feature requests for both SD Maid stable & beta. I'll also discuss issues else where but usually a lot of helpful information gets lost if it's not organised, so I prefer the issue tracker .

Beta testing
If you are interested in beta versions and want to help test new features you can find the appropriate links here There is also some discussion in SD Maids G+ community.

If you want to help translate look here: SD Maid @ crowdin.com
Thank you!

Help document
See sdmaid.darken.eu/help

See sdmaid.darken.eu/privacy

XDA:DevDB Information
SD Maid - System Cleaning Tool, App for the Android General


Version Information
Status: Stable
Current Stable Version: -
Stable Release Date: 1969-12-31

Created 2014-06-02
Last Updated 2017-08-15
How to help me troubleshoot your issues

Please see here for instructions on how to best report bugs:
Weekend beta v4.3.0 brings a truckload of core improvements.

Here are the links if you just want to dive in:


Some notes:
  • Tools will now display 'allocated size' instead of 'apparent size'. Allocated size is the size an item actually takes up on your storage (i.e. a 1 byte file actually uses 4096 byte on storage). Apparent size is a files length, how large the file itself tells us it is (i.e. a file may say it is 8096 byte long, but actually only takes up 4096 byte). A big source for discrepancy between sizes are caused by "sparse-files", these are files that contains a lot of 0000000. If the file system supports it, a sparse file of length 1GB could be saved on a 1MB storage. I think we are mainly interested in size on our storage (allocated size), not how much data something uses when sending it over network (apparent size). This will be most noticeable with the AppCleaner (which will show larger amounts because of many small files) and the SystemCleaner (which will show smaller ammounts, due to thumbnails often being sparse files). The Explorer will show both sizes if they differ, format 'allocated size (apparent size)'.
  • SD Maid now ships with toybox instead of busybox. Toybox is smaller and it fixes an issue I had with busybox. It's debatable whether toybox is faster, but looking it's code it is at least a lot leaner. Toybox is also something that all future Android versions will ship which gives us a lot of room for good compatibility on future Android ROMs (e.g. if we have to use the system toybox binary instead of SD Maids own). Busybox was not installed in most ROMs. Why not both? SD Maid is now compatible with both toybox and busybox, and will fallback to a busybox on your system if that is what it takes to run without issue on your device. Maxium compatibility !
  • If you have root SD Maid will no longer ask for secondary storage permission. There were too many problems with people on chinese (rooted) ROMs that did not manage to grant the permission. You can still grant it manually via advanced settings. In theory, i thought performance should be better with secondary storage permissions through the storage access framework, but I couldn't actually measure it. ¯\_(ツ)_/¯
  • You will probably never see the 'BUSYBOX error' page again because this only happens with root and SD Maid will now give up root if it would otherwise mean showing the error and giving up.
  • AppControl doesn't load app sizes by default anymore and is thus much faster. Also has improved filtering options (right side drawer).
  • The tool "Biggest" is now called "Storage analyzer" and has been completely rewritten.
  • Explorer now supports unpacking any type of 'zip' files (.zip, .apk etc) (without root for now).
  • The LastModified tool is gone (bye!), and the Searcher now has options for minimum and maximum age (hi!).
  • There is a new (better?) clutter reporter tool which uses GitHub. Let me know how it works and what I can improve, clutter reports is what gets us closer and closer to a 100% detection rate.
  • Besides dozen of bugfixes, there have also been multiple core changes that attempt to improve performance of SD Maid by reusing objects and making data lookups faster.
  • Not that you can see it, but many of the changes made it also a lot easier for me to better write unit tests for modules of SD Maid
All unit tests, I currently have, passed, but due to the amount of changes and changes to the core structure, I expect a few bugs, so this is a beta only release. Catching them and adding more tests is what a beta is for though, right ? (give the issue tracker some love!)
I made some good progress on the weekend so SD Maid v4.10.0 is here.

This update is dedicated to the duplicates tool and a beta-only release.

Let's start with the biggest change: The previous autoselection dialog is gone and SD Maid now performs an automatic selection based on a set of criterias you can adjust. So now you press the autoselection button and it just happens.

The previous dialog allowed you to select one and only one type of criterion to select files by. There isn't really a right and a wrong way to do that, but based on many mails I received there is certainly a popular preference. I've put these preferences as "defaults" into an extra screen (check the option menu) which you can adjust.

Currently we have the following defaults:

- Priority 1: Media Provider, try to keep files that are indexed by the Media Storage app and try to delete those that are not indexed. The most common type of support mail I get is people complaining that SD Maid deleted their images, because they only look in the gallery app, they think SD Maid deleted them all, but the remaining copy is just in a space that is not indexed.

- Priority 2: Storage location, assuming the user has an extra sdcard, try to keep the files on the sdcard and delete the files in internal storage. The assumption is that the user always wants to free space on internal storage.

- Priority 3: Path nesting, we prefer to keep shallowly nested files as those are easier to find and access.

- Priority 4: Modification date, we prefer older files because we assume that the newer file is an unwanted copy. E.g. older picture comes from the camera app, while the newer picture is a copy from an instant messenger app.

I'm looking for feedback whether you think this is the optimal default setup.

You can also find these details in the wiki: https://github.com/d4rken/sdmaid-public/wiki/Duplicates

The second new feature is "pruning media storage references". It's a not too rare occurence that apps show empty/grey thumbnails for image files that have been deleted, because the media storage database still contains a reference. SD Maid will now check the database for references to images deleted by the duplicates tool and then delete those references.

There have also been various changes to the user interface. I'm slowly changing some of SD Maids core UI architecture to allow for a more responsive UI interaction. The duplicates tool is just the first tool getting this treatment. The UI should lag less on low end devices and it should also no longer freeze when running selection on thousands of files. Play a bit around with the autoselection, using single click/long click on items and let me know how it goes.

I've also added a box that shows the task result prominently. Task results were previously rather hidden away (navdrawer, startpage, notifications) and you couldn't easily view them in the actual tool they belong too, which is a bit backwards, isn't it? I plan to add this "task result box" to other tools too. With more space to display infos we can then also make the result messages a bit more detailed.

Some texts such as the selection criterion explanations are not translatable yet as I'm looking for your feedback on the wording. Is it clear what each option? Please let me know.

Oh and the duplicates settings have been moved into their own file and gotten a "reset to default" option, once the other tools get this we can finally have a nice and clean backup option for settings .

There have been a few other changes, but I think this is enough wall of text. Check the changelog .

v4.10.1 is out.

I've fixed reported crashes (thx @IronTechmonkey ) and spend time rewriting quick access and other progress related feedback to improve performance. In some case there were multiple dozen callbacks per second which just wasted UI resources. I've limited this to ~70ms update intervals which is about the lower edge of delay at which humans can notice motion.

Using ConstraintLayout I've also made several UI hierarchies flatter which should also improve performance when redrawing elements to display progress updates.

Now that the duplicate criteria screen no longer crashes, I'm looking for some feedback on the texts/wording of each option before they are made translateable.


About Joyk

Aggregate valuable and interesting links.
Joyk means Joy of geeK