Welcome to the iFans Forums Create Your Account or Ask a Question Answers in 5 minutes - no registration required!

Master List of .plist Hacks + Hex Edits (UPDATED)

Discussion in 'iOS Jailbreak & Cydia' started by ValleyForge, Jul 4, 2012.

  1. ValleyForge

    ValleyForge Well-Known Member

    Joined:
    May 25, 2011
    Messages:
    11,073
    Likes Received:
    2,061
    Device:
    Nexus 4
    Adapted from the original thread

    Updated as of: iOS 6.1, 2/17/13

    Getting Started:

    To start, you must know how to edit .plist/.strings files, and delete certain files on your device. You can do this in any of three ways:

    On your iOS device:

    iFile can do most everything (it is shareware, but free to use with limited compatibilities. Most of the hacks listed here can be done free on iFile.) Download it via Cydia.
    This program is highly recommended for inexperienced users.

    On Windows:

    For browsing the filesystem: WinSCP, or iFunBox
    For editing .plist files: Plist Editor for Windows

    On Mac:

    For browsing the filesystem: Cyberduck, or iFunBox
    Alternative to the native .plist editor (not necessarily needed): PL tools

    -------------------------------------

    The following hacks should work with all iPads, iPhones, and iPod touches on the specified iOS version(s) unless otherwise noted

    NOTES:
    • I will use N81 and N81AP.plist as a general reference to the file which may be different depending on your device, eg. iPad 1g = K48AP, etc.
    • When editing plist files, they are automatically sorted alphabetically, so if you add something right after <dict> and there are other things that would come alphabetically before it then it would move down.
    • The hacks listed below are in order of discovery/date added, with the most recently added first.
    iOS Quick Hack post links

    Enable FaceTime over 3G
    This is credited to matchstick.

    iOS 6.x

    Navigate to /System/Library/CoreServices/SpringBoard.app
    and open N81AP.plist (or whatever it is on your device)
    After
    Code:
    <key>capabilities</key>
    <dict>
    add the following:
    Code:
    <key>3Gvenice</key>
    <true/>
    Respring the device for changes to take effect. Then open Settings.app > FaceTime to use Mobile Data for FaceTime.


    Add Custom Vibration Patterns (iPhone only)
    This is credited to matchstick.

    iOS 6.x

    Navigate to /System/Library/PrivateFrameworks/ToneLibrary.framework
    and open TLVibrationPatterns.plist
    Look at the formatting if the file to help undertand how to add to it.
    After the first <dict>, add a new vibration based on this template:
    Code:
    <key>name_of_pattern</key>
    <dict>
        <key>Intensity</key>
        <real>1</real>
        <key>VibePattern</key>
        <array>
            <true/>
            <integer>250</integer>
            <false/>
            <integer>200</integer>
        </array>
    </dict>
    Change name_of_pattern to what you want to name it (must be only upper/lowercase letters, numbers, .'s, -'s, and _'s).
    Also edit the values under the VibePattern array to your liking. Look at the other entries to understand how this works. Putting <true/> starts a vibration, putting <integer>1000</integer> will wait for one second, and putting <false/> stops a vibration.
    Once you've got your vibration pattern added to that plist, exit it and enter the .lproj folder of your language (eg. en.lproj for English) and open TL.strings. Here add a new line for your vibration pattetn like this:
    Code:
    "vibration:name_of_pattern" = "name_of_pattern"
    Next, do exactly the same as the above in /System/Library/PrivateFrameworks/ToneLibraryNoUI.framework

    Respring the device for changes to take effect. To set your vibration pattern, go to Settings.app > Sounds > Text Tone > Vibration and select your new pattern.


    Disable Camera Shutter Sound

    Not really a plist hack, but something requested by iFans members.

    iOS 5.x-6.1

    Navigate to: /System/Library/Audio/UISounds
    Delete or rename "photoShutter.caf"

    Respring the device for changes to take effect.


    Disable OTA Updates

    Since you are jailbroken, you can't use OTA updates anyway. Doing the following will disable them completely, meaning they will not be downloaded, periodically checked for, or attemptable, and this will speed up your device too.

    iOS 5.x-6.1

    Navigate to: /System/Library/LaunchDaemons/
    Delete the following files if they exist (note that not all iOS versions have all of these files):
    com.apple.softwareupdateservicesd.plist
    com.apple.awd_ice3.plist
    com.apple.mobile.softwareupdated.plist
    com.apple.OTACrashCopier.plist
    com.apple.OTATaskingAgent.plist

    Reboot the device for changes to take effect.


    Persistent Wifi Battery Fix (Without Disabling the Persistent Wifi):

    Have a battery drain issue? Is it caused by having persistent wifi on all the time? Well I can assure you this problem arises from Apple’s poor Notification setup. As a result, to fix this issue all one really has to do is simi-disable Notification (disable only when iPod is sleeping) on their device. For some, including myself, disabling it via the setting app did not work.
    Consequently, you will need to...

    iOS 4.1-4.2.x

    Navigate to and open: /System/Library/LaunchDaemons/com.apple.apsd.plist
    Then delete:
    Code:
    <key>keepalive</key>
    Reboot the device for changes to take effect.

    iOS 4.3.x-5.x

    Navigate to: /System/Library/LaunchDaemons/
    Rename "com.apple.apsd.plist" to "com.apple.apsd.plist.bak"

    Reboot the device for changes to take effect.


    Increase Camera Megapixels (iPod touch 4 only):

    This edit is credited to Eddiewattz

    So we all know how apple claims to have given us a .7 mp camera. Well the real truth is that they gave us more than a .7 mp camera (as evident by the HD video capture). However, apple ended up resizing all photos taken to yield the poor .7 mp. Well to increase your photos by about .23 mp, follow this plist edit.

    iOS 4.1-4.2.x

    Navigate to and open: /System/Library/PrivateFrameworks/Celestial.framework/N81/AVCapture.plist

    Go to Line 932:
    Code:
    <key>AVCaptureMode_PhotoCapture</key>
    Under this key, you will find:
    Code:
    <string>Back Facing 1MP Photo</string>
    Within this string, you will need to edit:
    Code:
    <key>Width</key>
    <integer>960</integer>
    </dict>
    to
    Code:
    <key>Width</key>
    <integer>1280</integer>
    </dict>
    Then scroll down about 23 lines to the following key:
    Code:
    <key>Sensor</key>
    <dict>
    Within this key, you will need to edit:
    Code:
    <key>Width</key>
    <integer>960</integer>
    </dict>
    to
    Code:
    <key>Width</key>
    <integer>1280</integer>
    </dict>
    Last but not least, go up a few lines, to where you find the Preview key. There, you will need to change:
    Code:
    <key>Preview</key>
    <dict>
    <key>Height</key>
    <integer>640</integer>
    to
    Code:
    <key>Preview</key>
    <dict>
    <key>Height</key>
    <integer>540</integer>
    Reboot the device for changes to take effect.

    iOS 4.3.x
    Special thanks to joeyddr for this update.

    Navigate to and open: /System/Library/Frameworks/AVFoundation.framework/N81/AVCaptureSession.plist

    Find this key:
    Code:
    <key>AVCaptureSessionPresetPhoto</key>
    Under this key, you will find:
    Code:
    <string>Back Facing 1MP Photo</string>
    Within this string, you will need to edit:
    Code:
    <key>Width</key>
    <integer>960</integer>
    </dict>
    to
    Code:
    <key>Width</key>
    <integer>1280</integer>
    </dict>
    Then scroll down about 23 lines to the following key:
    Code:
    <key>Sensor</key>
    <dict>
    Within this key, you will need to edit:
    Code:
    <key>Width</key>
    <integer>960</integer>
    </dict>
    to
    Code:
    <key>Width</key>
    <integer>1280</integer>
    </dict>
    Last but not least, go up a few lines, to where you find the Preview key. There, you will need to change:
    Code:
    <key>Preview</key>
    <dict>
    <key>Height</key>
    <integer>720</integer>
    to
    Code:
    <key>Preview</key>
    <dict>
    <key>Height</key>
    <integer>540</integer>
    Reboot the device for changes to take effect.

    iOS 5.x

    Navigate to: /System/Library/PrivateFrameworks/MediaToolbox.framework/N81/AVCaptureSession.plist

    Find this key:
    Code:
    <key>AVCaptureSessionPresetPhoto</key>
    Under this key, you will find:
    Code:
    <string>Back Facing 1MP Photo</string>
    Within this string, you will need to edit:
    Code:
    <key>Width</key>
    <integer>960</integer>
    </dict>
    to
    Code:
    <key>Width</key>
    <integer>1280</integer>
    </dict>
    Then scroll down about 23 lines to the following key:
    Code:
    <key>Sensor</key>
    <dict>
    Within this key, you will need to edit:
    Code:
    <key>Width</key>
    <integer>960</integer>
    </dict>
    to
    Code:
    <key>Width</key>
    <integer>1280</integer>
    </dict>
    Last but not least, go up a few lines, to where you find the Preview key. There, you will need to change:
    Code:
    <key>Preview</key>
    <dict>
    <key>Height</key>
    <integer>720</integer>
    to
    Code:
    <key>Preview</key>
    <dict>
    <key>Height</key>
    <integer>540</integer>
    Reboot the device for changes to take effect.


    Enable HDR:

    HDR is Apple’s way of “sticking it to the man.” It is by far, one reason for buying an iPhone 4 over an older device.
    This is no longer the case; now you can get this feature too.

    iOS 4.1-4.2.x

    Navigate to and open: /System/Library/PrivateFrameworks/Celestial.framework/N81/AVCapture.plist
    Add the following, underneath the AVCaptureMode_PhotoCapture key:
    Line 953:
    Code:
    <key>HDR</key>
                <true/>
                <key>MaxFrameRate</key>
                <integer>30</integer>
                <key>MinFrameRate</key>
                <integer>15</integer>
                <key>Preview</key>
                <dict>
                    <key>Height</key>
                <integer>640</integer>
                <key>PixelFormatType</key>
                <string>420f</string>
                <key>Width</key>
                <integer>852</integer>
                </dict>
    The edit should look like this:
    Code:
    <string>AVCaptureMode_FrontFacingPhotoCapture</string>
                <key>FullResolutionPreview</key>
                <true/>
                <key>HDR</key>
                <true/>
                <key>MaxFrameRate</key>
                <integer>30</integer>
                <key>MinFrameRate</key>
                <integer>15</integer>
                <key>Preview</key>
                <dict>
                <key>Height</key>
                <integer>640</integer>
                <key>PixelFormatType</key>
                <string>420f</string>
                <key>Width</key>
                <integer>852</integer>
                </dict>
    Now, navigate to and open: /System/Library/CoreServices/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
        <key>camera-flash</key>
        <true/>
        <key>hdr-image-capture</key>
        <true/>
    Respring the device for changes to take effect.

    iOS 4.3.x

    Navigate to and open: /System/Library/Frameworks/AVFoundation.framework/N81/AVCaptureSession.plist
    Locate the following section:
    Code:
    <key>AVCaptureSessionPresetPhoto</key>
    <dict>
    <key>Description</key>
    <string>Back Facing 1MP Photo</string>
    In that section, add:
    Code:
    <key>HDR</key>
    <true/>
    underneath:
    Code:
    <key>ChromaNoiseReduction</key>
    <true/>
    Now, navigate to and open: /System/Library/CoreServices/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
        <key>camera-flash</key>
        <true/>
        <key>hdr-image-capture</key>
        <true/>
    Respring the device for changes to take effect.

    iOS 5.x

    Navigate to: /System/Library/PrivateFrameworks/MediaToolbox.framework/N81/AVCaptureSession.plist
    Locate the following section:
    Code:
    <key>AVCaptureSessionPresetPhoto</key>
    <dict>
    <key>Description</key>
    <string>Back Facing 1MP Photo</string>
    in that section, add:
    Code:
    <key>HDR</key>
    <true/>
    underneath:
    Code:
    <key>ChromaNoiseReduction</key>
    <true/>
    Now, navigate to and open: /System/Library/CoreServices/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
        <key>camera-flash</key>
        <true/>
        <key>hdr-image-capture</key>
        <true/>
    iOS 4.1-5.x

    To remove the flash button from camera app,
    Navigate to: /System/Library/PrivateFrameworks/PhotoLibrary.framework
    Rename:
    Code:
    PLCameraFlashBackgroundLeft.png
    and PLCameraFlashBackgroundRight.png
    to
    Code:
    PLCameraFlashBackgroundLeft.png%
    and PLCameraFlashBackgroundRight.png%
    Respring the device for changes to take effect.


    Enable Battery Percentage:

    There are two methods of doing this. The first is cleaner and better in my opinion because it gives you the native toggle switch option in Settings > General > Usage. The second method does not give you this option, but rather always has the battery percentage enabled, and is also carried through iTunes backups/iCloud backups when restoring your device.

    Method 1:

    iOS 4.1-4.3.x

    Navigate to and open: /System/Library/CoreService/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
    <key>gas-gauge-battery</key>
    <true/>
    Then, navigate to and open: /Applications/Preferences.app/General.plist
    Find:
    Code:
    <string>USAGE</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>cellular-data</string>
                </array>
    and empty the array so it looks like:
    Code:
    <string>USAGE</string>
                <key>requiredCapabilities</key>
                <array>
                </array>
    
    iOS 5.x-6.1

    Navigate to and open: /System/Library/CoreService/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
    <key>gas-gauge-battery</key>
    <true/>
    Respring the device for changes to take effect.

    Method 2:

    iOS 4.1-4.2.x

    Navigate to and open: /var/mobile/Library/SpringBoard/IconState.plist
    After:
    Code:
    <plist version="1.0">
    <dict>
    add
    Code:
    <key>SBShowBatteryLevel</key>
    <true/>
    Respring the device for changes to take effect.

    iOS 4.3.x-5.x

    Navigate to and open: /var/mobile/Library/Preferences/com.apple.springboard.plist
    After:
    Code:
    <plist version="1.0">
    <dict>
    add
    Code:
    <key>SBShowBatteryLevel</key>
    <true/>
    Respring the device for changes to take effect.


    Change the Carrier Name:

    Note: This hack will change the mail.app signature setting. It will be changed to:
    DEFAULT_SIGNATURE_[the device name you assigned]
    so be sure to change it back.
    This hack will also change the spotlight search name. So it will be "Search Happy" if "Happy" is your device name.

    Tired of seeing the old iPad/iPhone/iPod marking on the top left of the screen?

    iOS 4.1-6.1

    Navigate to and open: /System/Library/CoreServices/Springboard.app/N81AP.plist
    and change
    Code:
    <key>device-name</key>
    <string>[iPad/iPhone/iPod]</string>
    to
    Code:
    <key>device-name</key>
    <string>INSERT WHATEVER YOU WANT HERE</string>
    Respring the device for changes to take effect.


    Enable Usage Stats:

    iOS 4.1-4.3.x

    Navigate to and open: /Applications/Preferences.app/General.plist

    Look for the following entry:
    Code:
    <string>USAGE</string>
    <key>requiredCapabilities</key>
    <array>
        <string>cellular-data</string>
    </array>
    and empty the array so it looks like:
    Code:
    <string>USAGE</string>
    <key>requiredCapabilities</key>
    <array>
    </array>
    Next, navigate to and open: /Applications/Preferences.app/Usage Statistics.plist
    Find the following:
    Code:
            <dict>
                <key>cell</key>
                <string>PSGroupCell</string>
                <key>label</key>
                <string>USAGE_HEADER</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>usageElapsed:</string>
                <key>label</key>
                <string>USAGE_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>standbyElapsed:</string>
                <key>label</key>
                <string>STANDBY_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
    and empty the arrays so it looks like:
    Code:
            <dict>
                <key>cell</key>
                <string>PSGroupCell</string>
                <key>label</key>
                <string>USAGE_HEADER</string>
                <key>requiredCapabilities</key>
                <array>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>usageElapsed:</string>
                <key>label</key>
                <string>USAGE_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>standbyElapsed:</string>
                <key>label</key>
                <string>STANDBY_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                </array>
            </dict>
    Respring and fully charge the device for changes to take effect.

    iOS 5.x

    Navigate to /System/Library/PreferenceBundles/UsageSettings.bundle/Usage Statistics.plist
    Find the following:
    Code:
            <dict>
                <key>cell</key>
                <string>PSGroupCell</string>
                <key>label</key>
                <string>USAGE_HEADER</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>usageElapsed:</string>
                <key>label</key>
                <string>USAGE_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>standbyElapsed:</string>
                <key>label</key>
                <string>STANDBY_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
    and empty the arrays so it looks like:
    Code:
            <dict>
                <key>cell</key>
                <string>PSGroupCell</string>
                <key>label</key>
                <string>USAGE_HEADER</string>
                <key>requiredCapabilities</key>
                <array>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>usageElapsed:</string>
                <key>label</key>
                <string>USAGE_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>standbyElapsed:</string>
                <key>label</key>
                <string>STANDBY_ELAPSED</string>
                <key>requiredCapabilities</key>
                <array>
                </array>
            </dict>
    Respring and fully charge the device for changes to take effect.


    Increase/Add Autolock Times:

    iOS 4.1-5.x

    Navigate to and open: /Applications/Preferences.app/General.plist
    Find the following entry:
    Code:
                <key>validTitles</key>
                <array>
                    <string>1_MINUTES</string>
                    <string>2_MINUTES</string>
                    <string>3_MINUTES</string>
                    <string>4_MINUTES</string>
                    <string>5_MINUTES</string>
                    <string>NEVER</string>
                </array>
                <key>validValues</key>
                <array>
                    <integer>60</integer>
                    <integer>120</integer>
                    <integer>180</integer>
                    <integer>240</integer>
                    <integer>300</integer>
                    <integer>-1</integer>
    Here you may edit and/or add Titles and Values according to you liking, for example:
    Code:
                <key>validTitles</key>
                <array>
                    <string>1_MINUTES</string>
                    <string>2_MINUTES</string>
                    <string>5_MINUTES</string>
                    <string>10_MINUTES</string>
                    <string>15_MINUTES</string>
                    <string>20_MINUTES</string>
                    <string>NEVER</string>
                </array>
                <key>validValues</key>
                <array>
                    <integer>60</integer>
                    <integer>120</integer>
                    <integer>300</integer>
                    <integer>600</integer>
                    <integer>900</integer>
                    <integer>1200</integer>
                    <integer>-1</integer>
    Just make sure that you have a Value for each Title, and that the seconds are accurate to the minutes.
    Note: The times with included strings are 1-5, 10, and 15 minutes. This means that if you put "7_MNUTES" or any other time that isn't included, the Settings app will display "7_MINUTES" instead of "7 Minutes". To add your own strings, open /Applications/Preferences.app/[language].lproj/General~iphone.strings, and figure it out from there (it's easy, just look at the existing entries).

    Respring the device for changes to take effect.


    Unified iPod Media App

    Want to have a unified iPod icon (like the iPhone), and not the individual video and music icon on the iPod touch? Well if you do, simply apply the following hack.

    iOS 4.1

    Navigate to and open: /System/Library/CoreServices/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
    <key>unified-ipod</key>
    <true/>
    Next, navigate to and open: /private/var/stash/Applications/Preferences.app/Settings-iPod.plist
    Replace the following:
    Code:
            <dict>
                <key>bundle</key>
                <string>MusicSettings</string>
                <key>cell</key>
                <string>PSLinkCell</string>
                <key>hasIcon</key>
                <true/>
                <key>isController</key>
                <true/>
                <key>label</key>
                <string>MUSIC</string>
            </dict>
            <dict>
                <key>bundle</key>
                <string>VideoSettings</string>
                <key>cell</key>
                <string>PSLinkCell</string>
                <key>hasIcon</key>
                <true/>
                <key>isController</key>
                <true/>
                <key>label</key>
                <string>VIDEO</string>
            </dict>
    with
    Code:
            <dict>
                <key>bundle</key>
                <string>iPodSettings</string>
                <key>cell</key>
                <string>PSLinkCell</string>
                <key>hasIcon</key>
                <true/>
                <key>isController</key>
                <true/>
                <key>label</key>
                <string>iPod</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>unified-ipod</string>
                </array>
            </dict>
    
    Respring the device for changes to take effect.

    iOS 4.2.x-4.3.x

    Navigate to: System/Library/CoreServices/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
    <key>unified-ipod</key>
    <true/>
    Respring the device for changes to take effect.


    Virtual Memory (RAM) with Dynamic_Pager

    This particular hack is debated among us hackers as to whether it is safe or should be used at all. Furthermore, those who are are inexperienced in plist editing should stay away from this one.
    I personally find it to work extremely well, although it should not be used for long periods of time (more than a couple of months). Exactly what this does is create a pagefile(s) in the Media partition of your device (the one with more space) which the system uses as RAM. This will keep your device's free RAM above at least 65MB and usually above 160MB, depending on your current iOS. This results in the ability to run extremely RAM intensive apps, and perhaps smoother and more at once.
    Dynamic_pager is actually built into iOS just like Mac OS, but Apple didn't enable it.
    The reason it is dangerous is because your device's NVRAM has a limited number of read/write cycles. When using it as RAM, it is constantly being rapidly read/written to all the time. Just keep your use of it limited, and you should be ok.

    iOS 3.x-5.x

    Navigate to: /System/Library/LaunchDaemons
    Create a new plist called com.apple.dynamic_pager.plist
    Set the file permission to 755
    Inside this plist file, paste the following code:
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>KeepAlive</key>
        <true/>
        <key>Label</key>
        <string>com.apple.dynamic_pager</string>
        <key>OnDemand</key>
        <false/>
        <key>ProgramArguments</key>
        <array>
            <string>/sbin/dynamic_pager</string>
            <string>-F</string>
            <string>/private/var/vm/swapfile</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
    </dict>
    </plist>
    
    Next, Navigate to: /Library/Preferences
    Create a new plist called com.apple.virtualMemory.plist
    Set the file permission to 755
    Inside this plist file, paste the following code:
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>UseEncryptedSwap</key>
        <false/>
    </dict>
    </plist>
    
    Finally, set the permissions of the /var/vm folder to 777.

    Reboot the device for changes to take effect. To activate VM after each reboot, use SBSettings or another app to free memory. Your device will then freeze for up to 30 seconds; this is normal, just wait.
    Note: If your device freezes for a minute, flashes a white screen, and reboots, this is because you didn't make the second plist (/Library/Preferences/com.apple.virtualMemory.plist) or set the permissions wrong.


    Change the "slide to unlock" Text:

    iOS 4.1-5.x

    Navigate to and open:
    /System/library/CoreServices/SpringBoard.app/[your language, eg. English].lproj/SpringBoard.strings
    Look for the following label:
    Code:
        <key>AWAY_LOCK_LABEL</key>
        <string>slide to unlock</string>
    Change the "slide to unlock" to anything you want.

    Respring the device for changes to take effect.


    Remove ads from Safari, Cydia, iAds, and other mobile ads:

    I am sure that I am not alone when I say that I hate ads. Well if you are like me, fear not, because there is a "fix for that."

    iOS 4.1-5.x

    Navigate to: /etc/
    and replace your hosts file with this. (Updated 7/7/12)

    Next, go to /Applications and rename
    AdSheet.app
    to
    AdSheet.app.bak

    Reboot your device for changes to take effect.


    Remove the Dock from Your Homescreen:

    For those of you who hate Apple's dock (I know there are few of you) or have a theme that looks ugly with your dock, have you ever thought about removing it? If you have, you probably searched the world wide web to no avail. You can rest assured that your dock can be removed from your device. Like other hacks above, this does not deal with plist editing.

    First, remove all icons on the dock (or they will disappear from view after you apply this hack).

    iOS 4.1-4.3.x

    Navigate to: /System/Library/CoreServices/SpringBoard.app
    and rename
    SBDockBG@2x.png
    to
    SBDockBG@2x.png.bak

    Reboot the devicefor changes to take effect.

    iOS 5.x-6.1

    Navigate to: /System/Library/CoreServices/SpringBoard.app
    and rename
    SBDockBG@2x.png
    to
    SBDockBG@2x.png.bak

    Then, navigate to: /var/mobile/Library/Caches/com.apple.springboard.sharedimagecache/Persistent
    and delete
    SBDockBG.png.cpbitmap

    Reboot the device for changes to take effect.


    Location Services Bug Fix:

    Tired of Apple’s location services bug? Tired of always having to end and restart the location process to overcome this issue? Well now there is a fix for that.

    iOS 4.1-5.x

    Create a new file in the following path: /usr/local/bin/
    named: location.sh
    Within this file, paste the following code:
    Code:
    #!/bin/sh
     
    /bin/launchctl unload /System/Library/LaunchDaemons/com.apple.locationd.plist
    /bin/launchctl load /System/Library/LaunchDaemons/com.apple.locationd.plist
    Now create another file in the following path: /Library/LaunchDaemons
    named: net.script.locationd.plist
    Within this file, type in the following code:
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>Label</key>
        <string>net.script.locationd</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/local/bin/locationd.sh</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
    </dict>
    </plist>
    Reboot the device for changes to take effect.


    Disable Multitasking:

    For your information, disabling multitasking will speed up your device entirely, by a lot. Interestingly, having multitasking entirely disabled speeds up the device more than having it enabled even if you constantly close all apps from the background.

    iOS 4.1-6.x

    Navigate to: /System/Library/CoreService/SpringBoard.app/N81AP.plist
    and change
    Code:
    <key>multitasking</key>
    <true/>
    to
    Code:
    <key>multitasking</key>
    <false/>
    Respring the device for changes to take effect.


    YouTube App Buffer Fix:

    Tired of waiting 2 years (or what appears to be 2 years) for your YouTube app to buffer? If so, you can use this hack to change the default resolution for YouTube videos from 720p to 480p or lower.

    iOS 4.1-6.1

    Navigate to and open: /System/Library/CoreServices/SpringBoard.app/N81AP.plist
    and change
    Code:
    <key>720p</key>
    <true/>
    to
    Code:
    <key>720p</key>
    <false/>
    Respring the device for changes to take effect.


    Activate DemoApp.app Screen-Saver:

    Have you ever been to Best Buy and seen an iDevice with a screen-saver? Enable it with this hack.
    Here's the catch: When the screensaver is deactivated, the device will be at the homescreen (not the active app).

    iOS 4.1-5.x

    Navigate to and open: /var/stash/Applications/DemoApp.app/Info.plist
    and change:
    Code:
    <key>SBAppTags</key>
    <array>
    <string>hidden</string>
    </array>
    to
    Code:
    <key>SBAppTags</key>
    <array>
    <string>visible</string>
    </array>
    Next, place a video called "Demo.mov" into: /var/mobile
    Sample Demo.mov file:
    OSX Leopard Intro rotated and resized for 640x960 (retina):
    http://www.[PIRACY.mf].com/?mk8bj1xv1mrsubn
    OSX Leopard Intro rotated and resized for 480x640 (non-retina):
    http://www.[PIRACY.mf].com/?zm8qx9s328gaaa7
    This can be any video in any QuickTime-playable format at the right size for your device, named exactly "Demo.mov" (even if the extension was previously something else, eg. mp4).

    Respring the device for changes to take effect.


    Enable Multitasking Gestures:

    Are you envious of iPad owners and their multitasking gestures? If you were, here is a simple way to enable this feature on your device.

    iOS 4.3.x

    Navigate to and open: /var/mobile/Library/Preferences/com.apple.springboard.plist
    and add:
    Code:
    <key>SBUseSystemGestures</key>
    <true/>
    Then navigate to and open: /Applications/Preferences.app/General.plist
    and replace:
    Code:
            <dict>
                <key>cell</key>
                <string>PSGroupCell</string>
                <key>footerCellClass</key>
                <string>MultitaskingGestureExplanationView</string>
                <key>id</key>
                <string>Mutltitasking_Gesture_Group</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>multitasking-gestures</string>
                </array>
            </dict>
            <dict>
                <key>cell</key>
                <string>PSSwitchCell</string>
                <key>default</key>
                <true/>
                <key>defaults</key>
                <string>com.apple.springboard</string>
                <key>id</key>
                <string>Mutltitasking_Gesture_Switch</string>
                <key>key</key>
                <string>SBUseSystemGestures</string>
                <key>label</key>
                <string>Multitasking_Gestures</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>multitasking-gestures</string>
                </array>
            </dict>
    with
    Code:
            <dict>
                <key>cell</key>
                <string>PSGroupCell</string>
                <key>footerCellClass</key>
                <string>MultitaskingGestureExplanationView</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>multitasking-gestures</string>
                </array>
            </dict>
            <dict>
                <key>cell</key>
                <string>PSSwitchCell</string>
                <key>default</key>
                <true/>
                <key>defaults</key>
                <string>com.apple.springboard</string>
                <key>key</key>
                <string>SBUseSystemGestures</string>
                <key>label</key>
                <string>Multitasking Gestures</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>multitasking-gestures</string>
                </array>
            </dict>
    Then navigate to and open: /System/Library/CoreServices/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
    <key>multitasking-gestures</key>
    <true/>
    Respring the device for changes to take effect.
    You should now have a Settings > General > Multitasking Gestures toggle.

    iOS 5.x

    See the Hex Edits section below.


    Enable Multitasking in Cydia:

    Are you tired of Cydia's inability to multitask? Are you fed up with the reloading wheel? Do you wish to check your email while your Cydia gems (tweaks) install themselves?
    Before using this hack, I would advise reading saurik's warning within the .plist file (just open it with a text viewer).

    4.0.x-forever

    Navigate to and open: /Applications/Cydia.app/Info.plist
    and change:
    Code:
    <key>UIApplicationExitsOnSuspend</key>
    <true/>
    to
    Code:
    <key>UIApplicationExitsOnSuspend</key>
    <false/>
    Respring the device for changes to take effect.


    Hide Any App from Your Homescreen:

    Are you tired of having a particular app on your homescreen? If so, you can easily hide this app using the following tweak.

    iOS 2.x-6.1

    You will have to find the .app folder of the app you want to hide. If a system app, it will be in
    /Applications/[app name].app
    If an App Store app, it will be in
    /var/mobile/Applications/[random stuff]/[app name].app
    Hint: iFile can make your life easier by showing the app names in /var/mobile/Applications instead of the random string, and you can enable this in iFile's Preferences > File Manager > Application Names (ON).
    Note: Newsstand is not a normal app and must be disabled with a hex edit (see below).

    Find the .app you want to hide and open its Info.plist
    and add the following after <dict>:
    Code:
    <key>SBAppTags</key>
    <array>
    <string>hidden</string>
    </array>
    Respring the device for changes to take effect.


    Enable Hidden Panorama Capture in Camera App

    iOS 5.0.x

    Navigate to and open: /var/mobile/Library/Preferences/com.apple.mobileslideshow.plist
    Under:
    Code:
    <key>DiskSpaceWasLow</key>
    <false/>
    add:
    Code:
    <key>EnableFirebreak</key>
    <string>YES</string>
    Respring the device for changes to take effect. To use, open Camera.app and tap Options > Panorama


    Enable Hidden Autocorrect Bar

    iOS 5.0

    Navigate to and open: /Library/Preferences/com.apple.keyboard.plist
    and add:
    Code:
    <key>KeyboardAutocorrectionLists</key>
    <true/>
    Respring the device for changes to take effect.

    iOS 5.0.1-5.1.x

    Navigate to and open: /var/mobile/Library/Preferences/com.apple.keyboard.plist
    and add:
    Code:
    <key>KeyboardAutocorrectionLists</key>
    <true/>
    Respring the device for changes to take effect.


    Hex Edits section (advanced users):

    To perform these hacks, you will need to copy the respective binary executable file to your computer, edit it with a hex editor, copy it back to your device, and ldone it.
    1. You can use one of the above examples such as iFunBox to copy to/from your device's filesystem;
    2. Then you can use a hex editor such as XVI32 for Windows or Hex Fiend for Mac;
    3. And finally you can get ldone ("L"done) installed via Cydia by using a certain repo (hint: Google).


    Disable Newstand:

    This edit is credited to tw23

    A lot of people hate seeing the empty Newsstand app on their homescreen.

    iOS 5.x-6.0bx

    You will need to edit the SpringBoard binary file in /System/Library/CoreServices/SpringBoard.app. Open it in a hex editor, press CTRL + G (Command + G on Mac) to open Go To, and enter the offset corrusponding to your iOS:
    iOS 5.0.x:
    Code:
    165af4
    iOS 5.1.x:
    Code:
    169260
    iOS 6.0b1:
    Code:
    143BF0
    iOS 6.1-6.1.2:
    Code:
    0014D84C
    iOS 6.1.3:
    Code:
    0014D83C
    Press enter, and change
    Code:
    0120
    to
    Code:
    0020
    This changes "MOVS R0" from true to false.
    Now rename your device's existing SpringBoard binary to SpringBoard.bak, and copy the new one in place.
    Then you will need to set its permissions to 0755. This can be done by running this command (SSH terminal or MobileTerminal):
    Code:
    chmod 0755 /System/Library/CoreServices/SpringBoard.app/SpringBoard
    Then you will need to ldone it by running this command:
    Code:
    ldone /System/Library/CoreServices/SpringBoard.app/SpringBoard -s
    Reboot the device for changes to take effect.
    If you ever want to revert back to get Newsstand, just delete the "SpringBoard" binary and rename your backed up "SpringBoard.bak" back to "SpringBoard".


    Enable Multitasking Gestures:

    This edit is credited to xXrkidXx

    iOS 5.x

    Navigate to and open /System/Library/CoreServices/SpringBoard.app/N81AP.plist
    After
    Code:
    <key>capabilities</key>
    <dict>
    Add
    Code:
    <key>multitasking-gestures</key>
    <true/>
    Now you will need to edit the SpringBoard binary file in /System/Library/CoreServices/SpringBoard.app. Open it in a hex editor, press CTRL + G (Command + G on Mac) to open Go To, and enter the offset corrusponding to your iOS:
    iOS 5.0.x:
    Code:
    164866
    iOS 5.1.x:
    Code:
    167EDE
    Press enter, and change
    Code:
    B8 F1 01
    to
    Code:
    B8 F1 00
    Now rename your device's existing SpringBoard binary to SpringBoard.bak, and copy the new one in place.
    Then you will need to set its permissions to 0755. This can be done by running this command (SSH terminal or MobileTerminal):
    Code:
    chmod 0755 /System/Library/CoreServices/SpringBoard.app/SpringBoard
    Then you will need to ldone it by running this command:
    Code:
    ldone /System/Library/CoreServices/SpringBoard.app/SpringBoard -s
    Respring the device for changes to take effect.
    You should now have a Settings > General > Multitasking Gestures toggle.


    Always Show the Lockscreen Battery:

    This edit is credited to tw23

    This will show the large, green battery on the lockscreen whether the device is charging or not.

    iOS 5.x

    You will need to edit the SpringBoard binary file in /System/Library/CoreServices/SpringBoard.app. Open it in a hex editor, press CTRL + G (Command + G on Mac) to open Go To, and enter the offset corrusponding to your iOS:
    iOS 5.0.x:
    Code:
    a2a70
    Press enter, and change
    Code:
    00
    to
    Code:
    01
    Now rename your device's existing SpringBoard binary to SpringBoard.bak, and copy the new one in place.
    Then you will need to set its permissions to 0755. This can be done by running this command (SSH terminal or MobileTerminal):
    Code:
    chmod 0755 /System/Library/CoreServices/SpringBoard.app/SpringBoard
    Then you will need to ldone it by running this command:
    Code:
    ldone /System/Library/CoreServices/SpringBoard.app/SpringBoard -s
    Respring the device for changes to take effect.
    Last edited: Apr 15, 2013
    abdallah, morto, Dansco and 3 others like this.
  2. ale624

    ale624 Well-Known Member

    Joined:
    May 31, 2010
    Messages:
    3,487
    Likes Received:
    483
    Device:
    Nexus 4
    f*** me! had to scroll for like 10 minutes to get down here!

    was gunna say nice job!
    Aaron_2, Yamada and tw23 like this.
  3. Joe Rossignol

    Joe Rossignol Community Manager Staff Member

    Joined:
    Jan 9, 2008
    Messages:
    11,521
    Likes Received:
    1,261
    Device:
    iPhone 5 (Black)
    Very, very nice work here.
    ValleyForge likes this.
  4. pandaa

    pandaa Banned

    Joined:
    Nov 7, 2011
    Messages:
    7,438
    Likes Received:
    130
    Device:
    4G iPod touch
    I'm think this would look great with some spoiler tags.
  5. Megaorange

    Megaorange Active Member

    Joined:
    Feb 8, 2011
    Messages:
    801
    Likes Received:
    46
    Device:
    HTC One
    For enabling gestures is the offset different for 5.1.1
  6. ValleyForge

    ValleyForge Well-Known Member

    Joined:
    May 25, 2011
    Messages:
    11,073
    Likes Received:
    2,061
    Device:
    Nexus 4
    I know, the only iOS currently there is 5.0.1 (in bold). The only offsets I have listed are under their respective (bolded) iOS versions.
  7. ValleyForge

    ValleyForge Well-Known Member

    Joined:
    May 25, 2011
    Messages:
    11,073
    Likes Received:
    2,061
    Device:
    Nexus 4
    Updated titles and a new hosts file for even more ad blocking :D
    And guys, feel free to post any other hacks/ideas/suggestions/binary offsets you know of ;)
  8. JailbreakHelp

    JailbreakHelp Well-Known Member

    Joined:
    Oct 28, 2011
    Messages:
    5,668
    Likes Received:
    264
    Device:
    4G iPod touch
    Nice, good to see the hex-edits, I did the Newsstand one :D
  9. vampyr

    vampyr Member

    Joined:
    Mar 7, 2008
    Messages:
    94
    Likes Received:
    3
    Device:
    iPhone 4 (Black)
    Disabling multitasking in ios 5 doesn't work, just renders the dock useless
  10. ValleyForge

    ValleyForge Well-Known Member

    Joined:
    May 25, 2011
    Messages:
    11,073
    Likes Received:
    2,061
    Device:
    Nexus 4
    What exactly do you mean? I have multitasking disabled and my dock is fine, along with the app switcher. Could you post a screenshot of what you mean?

Share This Page