General Let me present a three-time-faster respringer (icon display / hiding only?)

Discussion in 'Jailbreaks and iOS Hacks' started by Menneisyys2, Mar 16, 2014.

  1. Menneisyys2 macrumors 603

    Joined:
    Jun 7, 2011
    #1
    (NOTE: this respringer may “only” apply to the “let's quickly make the newly-installed DEB file's icon visible” folks, as is also explained at the bottom.)

    Many of you have wondered if it's possible to speed up reloading the SpringBoard icons after installing a tweak so that its icon is displayed.

    Cydia, regrettably, with some apps, doesn't prompt for respringing. That is, it's mandatory to respring even after some Cydia installs. And if you directly install .DEB files (via, say, iFile's "Installer" menu item), you'll almost always end up having to respring because most JB devs don't include a "postinst" DEBIAN file with the content

    #! /bin/sh
    su mobile -c uicache

    in the DEB archive. (I do, for example in my "Video Bitrate Configurer" and "SkypeRecorderSourceSwitcher". This is why even if you install them via iFile, you don't end up having to respring to make their icons visible.)

    While respringing is much faster than a reboot, it still takes 11-15 seconds, even on current, top hardware. For example, if you use com.bigbos.Respring 6.0.1 (by BigBoss), it takes

    - 14 seconds on the 7.0.6 rMini Wi-Fi
    - 15 seconds on the 7.0.4 iPhone 5
    - 22 seconds on the 7.1b3 (spoofed) iPad 3 3G
    - 13 seconds on the 6.1.0 iPad 2 Wi-Fi
    - 10 seconds on the 5.1.1 iPhone 3GS
    - 17 seconds on the 5.1.1 iPad 1 3G
    - 4 seconds on the 4.3.3 iPod touch 4G

    to respring. (And add the time of unlocking the device and navigating to the original SpringBoard tab to all this, except for the 3GS and the iPt4G.)

    With my respringer, all those figures are reduced to between 4 and 5 seconds, on all the listed iOS5+ devices. That's at least a three-time time reduction! (The new tweak runs for 3 seconds on the 4.3.3 iPt4G. That is, it's “only” a one-second improvement on it.)

    Getting and using it

    It's available in my private repo at winmobiletech.com/cy . Look for UICache Cleaner:

    [​IMG]

    Alternatively, here's the direct DEB link, installable via iFile and the like: http://www.winmobiletech.com/cy/debs/com.winmobiletech.uicachecleaner_1.0_iphoneos-arm.deb

    Using it is simple: as with other, previous respringer tools, just tap the (very simple – sorry) icon.

    Sources & info for geeks

    There are no sources of the tweak as it, basically, only contains one executable script file named “run”, with the following content:

    #! /bin/sh
    sh -c uicache


    Note: as Cydia runs DEBIAN pre/post install/removal scripts as root, we could use “su” there. Not so with executing scripts as the “mobile” user. This is why “su” is missing from the above command. Nevertheless, it isn't really needed, either – the script works just fine, even without switching to root user.

    NOTE THAT

    1, You should ONLY use it for displaying still-invisible icons after JB installs. I haven't tested it with themes and don't know whether it works with them. Let me know if they do.

    2, it does NOT work with apps requiring a “stronger” respring. For example, the changes you make in my “SkypeRecorderSourceSwitcher” app (see http://forums.macrumors.com/showthread.php?t=1713164 ) won't become used until you respring the system with either the built-in respringer (which “only” directly kills SpringBoard via killall – but doesn't clean the cache beforehand) or the BigBoss one. (Note that the latter also cleans the SB caches. This is why SkypeRecorderSourceSwitcher's built-in respringer tool is faster – it only needs 11 seconds on the rMini to respring.)

    3, it should be compatible with every iOS version. I've tested it on many devices with wildly different iOS versions (see their list above). Note that I haven't tested it on pre-4.3 ones.
     
  2. chambone macrumors 6502a

    chambone

    Joined:
    Dec 24, 2011
    Location:
    Netherlands
    #2
    Hi, thanks for providing us with this tool. I thought I'd give you some feedback. I don't theme or anything, but I do change the odd ugly app icon every now and then, so I need something to refresh the icon cache. So, since your app has no icon, I thought I'd first try it on itself. Added an icon named Icon@2x.png, pressed the blank icon and had to hold sleep/home to get out of the black screen. Upon rebooting I noticed your tweak showing my icon, so I decided to try it on another app. This time it indeed resprung very fast, but unfortunately the app I just supplied with a new icon showed no change. A standard clean with iCleaner Pro is the only thing that works for me up till now. But that's kind of overkill, not to mention slow, for just changing an app icon, so if you could get this to work I'd be very grateful. So grateful in fact that I'll make you an icon :D I'm on a 4S by the way, with 7.0.6 on it.
     
  3. braddick macrumors 68040

    braddick

    Joined:
    Jun 28, 2009
    Location:
    Encinitas, CA
    #3
    How is this different than tapping the single icon, iWipeCache tweak?
     
  4. Menneisyys2 thread starter macrumors 603

    Joined:
    Jun 7, 2011
    #4
    How long did you wait before the forced reboot? In my today's icon changing tests, I've sometimes measured somewhat larger cache cleaning times - even as high as 13s on the 7.0.4 iPhone 5. (The "full" Respring times were also noticeably higher than the ones I've previously published; between 25-32s.) This may have been related to my installing an app from the AppStore at the same time.

    I started playing with the standard icon changer in my own ConfigAR JB app (the one that, among other things, mutes Audio / Call Recorder and allows for, by changing its appname and/or icon, hide its purpose). On my iPhone 5, icon changes were always registered after the quick cache refresh. I'll continue experimenting on other iDevices and report back.
     
  5. Menneisyys2, Mar 17, 2014
    Last edited: Mar 17, 2014

    Menneisyys2 thread starter macrumors 603

    Joined:
    Jun 7, 2011
    #5
    As my tweak doesn't kill SpringBoard, its significantly faster - about two times on the iPhone 5. (Note that iWipeCache is somewhat - about 30% - faster on the same device than BigBoss' own Respring 6.0.1.)

    My tweak, however, is "only" suited for people with

    - direct DEB installers where the DEB's themselves don't contain a script to refresh the icon cache themselves (if they do, there is absolutely no point in respringing after installing the DEB as the cache has already been cleaned via the postinst script) or

    - icon changing needs. The latter isn't guaranteed to work in all cases. It worked on my iPhone 5 w/o problems. However, "chambone" stated in the second post it failed to refresh an icon on his 4S. I'll post more compatibility info after more extensive testing.
     
  6. chambone macrumors 6502a

    chambone

    Joined:
    Dec 24, 2011
    Location:
    Netherlands
    #6
    Well, I waited about ten secs before I began pressing the home button and then the sleep button to no effect. It must have been over 20 seconds when I decided to force a reboot. After that it fast-resprings fine though, must have been the icon I dropped in. I tried it twice but no icon changes. The iWipeCache tweak mentioned by braddick doesn't work for me either.
     
  7. Menneisyys2 thread starter macrumors 603

    Joined:
    Jun 7, 2011
    #7
    1. the reboot may have been caused by downloading/installing something while cache cleaning? I've just had 2-3-minute-long resprings (with the traditional, "old" SB-killer tweaks) because of my downloading an app while respringing.

    2. Does BigBoss' (which is, as I've pointed out, is the slowest tweak of the three) Respring 6.0.1 work with your changed icons? iWipeCache seems to have less functionality; hence the speed advantage over Respring 6.0.1.
     
  8. chambone macrumors 6502a

    chambone

    Joined:
    Dec 24, 2011
    Location:
    Netherlands
    #8
    No I wasn't downloading nor installing anything. Maybe I should just have waited longer. In any case, it resprung fine afterwards. Respring 6.0.1 works actually. Tried it twice, changed the icon twice.
     
  9. Menneisyys2 thread starter macrumors 603

    Joined:
    Jun 7, 2011
    #9
    Yup - after all, it's the most complete (and, consequently, slowest) Respring implementation.
     
  10. chambone macrumors 6502a

    chambone

    Joined:
    Dec 24, 2011
    Location:
    Netherlands
    #10
    Thanks for the tip though. I actually had Respring installed before, but since there are other options (springtomize's slide up, flipcontrolcenter) I figured I didn't need it anymore. It only now occurs to me that not all resprings are the same.
     
  11. JackieInCo macrumors 601

    Joined:
    Jul 18, 2013
    Location:
    Colorado
    #11
    This doesn't work. Any other ideas how to get my cydia and other installed apps through cydia icons back?
     

Share This Page