A quick note on memory usage (and hopefully this is the last note on libhide for months to come). There have been some questions as to how much additional memory is used by moving libhide into mobile substrate. I would argue that the answer is none. Here is why. First, the dylib itself, only takes a few kbytes of memory while running. Whatever is required to load a dylib and it just makes a list of your apps so that would be an array of some strings. Literally less than 100k including the 15k to load the dylib into memory. The “old” method had some overhead also. Springboard, itself, had to keep a list of hidden apps. But since it was not just focused on hiding icons, it had to keep more information in this list. Restrictions block protocols so that had to be handled. The new dylib prevents springboard from having to keep track of these things freeing up that memory. It’s a pretty bold statement to say that with the new method you are using *less* memory, but I will say it is roughly the same.
Update: I have v2.0.3 done and released in the main repository for beta testing. Changes: apps should no longer all be unhidden after installing something from appstore or sync from iTunes. (Respring solved the problem on 2.0.2). I’ll probably release this publicly in a few hours After over a 1000 downloads and no complaints, I’m releasing it public now.
Bug Report: If you sync with iTunes or install an app or update from appstore, all hidden apps are unhidden. Solution: just respring and everything is back to normal. I’ll look into this for next version. This is due to my spotlight speed up code.
Update: I have v2.0.2 done and released in the main repository up for beta testing. Changes:
- You can now hide iPod app
- Further spotlight speed ups, in fact, I think spotlight is probably slightly faster with the extension than without because I bypass some logic. Recommend uninstall spotbright for better spotlight speed with this. It will work with spotbright, but both do much of the samething and libhide does it faster. In fact, I believe libhide’s spotlight is faster than spotlight without libhide because it cuts off some internal logic and makes everything visible.
- Added ability for an app to hide from spotlight search results or not. No app uses this yet.
I believe I have solved the reported libhide issues and released v2.0.1 for beta testing. Please if you are capable of it update your libhide using this deb and then this command in SSH: dpkg -i libhide_2.0.1.deb.
Remember, as a beta tester you are expected to understand this may not be stable, although it does work for me tested on 3 devices. You must also be able to install this without help and report issues with a syslog if requested.
To use this, you will need bossprefs or sbsettings and simply hide some icons and unhide them. Note that mobile substrate safe mode should show all hidden icons, and a respring would hide them again.
Changes from 2.0:
1) Fixed speed issue of respring which was causing many older iphones to take forever respringing and in some cases, if enough hidden apps existed, go into an endless reboot loop.
2) Fixed major lag caused on spotlight
3) Added spotlight support for hidden apps. Spotbright is no longer needed. Your spotlight will be a bit faster if you uninstall spotbright if using libhide 2.0.1 or newer.
4) Fixed output bug in the update process and removed all the debug messages from the updater app (runs when you install from cydia only).
5) Added 2.x support. On 2.0 on 2.x firmware, you would have had no hidden icons.
For those of you worried about another mobile substrate addon for hiding apps, this also handles the hidden icons in spotlight so you may no longer need spotbright. That lets you remove one substrate in place of another.
Note: due to the all sources package adding my beta repository for users that were not capable of being beta testers, I have removed my beta repository and asked Saurik to update my main repository source that would force the beta repository to be uninstalled.