Master List of System Hacks for Ipod Touch 4g

Discussion in 'iPod touch Hacks' started by SpiritJb, Jan 26, 2011.

  1. SpiritJb, Jan 26, 2011
    Last edited: May 13, 2011

    macrumors newbie

    Joined:
    Jan 26, 2011
    #1
    I am porting this post over from iFans (I am the one who compiled this post), with hope that it helps many iPod Touch 4g users. Although I compiled this post, I did not come up with all hack (only some). Bellow, I have credited all the usernames of the iFans forum members that have assisted in this collaboration. I hope you enjoy the hacks that my colleges and I have discovered.

    Warning, before you proceed with any hack, be sure to backup the respected file (i.e. *.plist, *.strings, *.png).

    Also, those who are inexperienced with editing plist, just use iFile to ensure an error free process (assuming you correctly follow the instructions bellow).


    Due to the amazing collaboration of many iFans forum members, we have really gotten to exploit the iPod Touch 4 to its maximum capacity. However, until recently, the exploitation was carried around numerous posts. So here is an all in one post on how to improve your iPod Touch.

    Please note: I did not come up with most of these hacks/edits/tweaks. As a result, I will be crediting the originator (originator's username are associated with iFans.com) of each hacks/edits/tweaks, as they are listed.

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

    Getting Started:

    Before getting started, you must know how to edit the *.plist, modify certain files (non-plist files), and delete certain files on your device.

    On your iOS device:

    iFile can do everything (it is shareware, but free to use with limited compatibilities. Rest assure, these hacks listed here can be done free on iFile.) -->Download via Cydia

    This program is HIGHLY recommended for inexperienced users.

    If you chose to not use iFile, read on. If you will use iFile, you may skip to the desired hack(s) listed bellow.

    On Windows:

    Plist Editor for Windows: Free

    On Mac:: Alternative to the native OSX plist editor:

    PL tools: Free

    SSH:

    Now that you got the plist programs (on Windows or Mac), you need to learn how to SSH into your device.

    If you are using iFile, you can edit files without a computer. Thus, you will not need to SSH into your device. Furthermore, if you need to make a wifi connection (i.e., to backup your plist), you can establish a wifi connection within iFile.

    In other words, unless you are using a mac or plist editor, don't worry about SSH.


    To SSH from computer to device (via wifi), read this tutorial.
    To SSH from computer to device (via usb), read this tutorial.
    To SSH from iOS device to iOS device, read this tutorial.

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

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

    Special thanks to iBricked for helping me solve this one.

    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...

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

    ... and delete:

    Code:
    <key>keepalive</key>
    Finally, reboot device.


    Increase the Megapixels of your camera:

    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.

    Go to:

    \System\Library\PrivateFrameworks\Celestrial.frame work\N81\AVCapture.plist

    Looking for:

    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 toll you see 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>
    Finally, restart you iPod Touch 4.

    Enable HDR:

    HDR is Apple’s way of “sticking it to the man.” It is by far, one reason for buying an iPhone over an iPod Touch. Well thanks to Coentje44, this is no longer the case. Now iPod Touch 4g owners can get this feature too.

    This is how you do it.

    Go to:

    \System\Library\PrivateFrameworks\Celestrial.frame work\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:

    \System\Library\CoreServices\Springboard.app\N81AP .plist

    Add the following, underneath line 6 which is <dict> [under <capabilities> (line 5)]

    Code:
    <key>camera-flash</key>
        <true/>
        <key>hdr-image-capture</key>
        <true/>
    <true/>
    
    The edit should look like this:

    Code:
    <key>compatibilities</key>
    <dict>
        <key>camera-flash</key>
        <true/>
        <key>hdr-image-capture</key>
        <true/>
    Finally, restart your iPod Touch 4.

    Enable Battery Percentage:

    Please note, there are 2 methods, pick your favorite:


    This edit is credited to: ibizaGTi

    We have all heard this one before, "why doesn't Apple include a battery percent meter." Well for those who are still asking, I myself don't have the answer to this. However, bellow is a simple twea to enable this feature.

    Go to: \System\Library\CoreService\SpringBoard.app\N72AP. plist as

    Add:

    Code:
    <key>gas-gauge-battery</key>
    <true/>
    Then open:

    /Applications/Preferences.app/General.plist

    Go to:

    Code:
    <string>USAGE</string>
    			<key>requiredCapabilities</key>
    			<array>
    				<string>cellular-data</string>
    			</array>
    Replace the above with:

    Code:
    <string>USAGE</string>
    			<key>requiredCapabilities</key>
    			<array>
    				<dict>
    					<key>unified-ipod</key>
    					<false/>
    				</dict>
    			</array>
    		</dict>
    Finally, restart your iPod, and enable the battery percent reading under Settings>General> Usage.

    Another way to enable Battery Percentage:

    This edit is credited to 42395_skyline.

    Navigate to:
    /var/mobile/Library/Preferences/com.apple.springboard.plist

    Add
    Code:
    <key>SBShowBatteryLevel</key>
    <true/>


    How to change the carrier name:

    This edit is credited to Der-Kleine and 42395_skyline.

    Tired of seeing the old iPod marking on the top left of the screen? Want to personalize your device, if so, here is a quick plist edit for you:

    Navigate to:

    System/Library/CoreServices/Springboard.app/N72AP.plist

    Change
    Code:
            <key>device-name</key>
            <string>iPod</string>
    To:

    Code:
    <key>device-name</key>
            <string>INSERT WHATEVER YOU WANT HERE</string>
    Finally, restart your iPod Touch.
    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.

    Also, this will change the spotlight search name as well.

    So it will be:

    Search Happy (If "Happy" is your device name.)


    How to enable Usage Stats:

    How long has it been since you last charged your iPod? How long has your iPod been on standby? Well if you don't know the answer to the aforesaid, rest assure this new tweak, submitted by touchhacker101, will help you answer the above questions.

    Navigate to /Applications/Preferences.app/General.plist

    Look for the following plist entry:
    Code:
    <string>USAGE</string>
                <key>requiredCapabilities</key>
                <array>
                    <string>cellular-data</string>
                </array>
    Replace the above entry with:

    Code:
    <string>USAGE</string>
                <key>requiredCapabilities</key>
                <array>
                    <dict>
                        <key>unified-ipod</key>
                        <false/>
                    </dict>
                </array>
            </dict>
    Next navigate to:

    /Applications/Preferences.app/Usage Statistics.plist

    Within this plist, replace 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>
    With this:
    Code:
    <dict>
                <key>cell</key>
                <string>PSGroupCell</string>
                <key>label</key>
                <string>USAGE_HEADER</string>
                <key>[COLOR="Orange"]xxxxxxxxxCapabilities[/COLOR]</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>usageElapsed:</string>
                <key>label</key>
                <string>USAGE_ELAPSED</string>
                <key>[COLOR="Orange"]xxxxxxxxxxCapabilities[/COLOR]</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
            <dict>
                <key>get</key>
                <string>standbyElapsed:</string>
                <key>label</key>
                <string>STANDBY_ELAPSED</string>
                <key>[COLOR="Orange"]xxxxxxxxCapabilities[/COLOR]</key>
                <array>
                    <string>telephony</string>
                </array>
            </dict>
    
    Finally, reboot and fully charge your iPod (this hack will only work, after the device is fully charged).

    How to Increase Autolock Time:

    This edit is credited to: touchhacker101

    For those who are tired of having your iPod rapidly sleep on you, follow the hack bellow.

    Navigate to /Applications/Preferences.app/General.plist

    Find the following plist entry:

    Code:
    <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>
    Edit according to you liking, for example:

    Code:
    <array>
                    <string>1_MINUTES</string>
                    <string>2_MINUTES</string>
                    <string>5_MINUTES</string>
                    <string>10_MINUTES</string>
                    <string>15_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>-1</integer>
    Finally, restart your iPod.
     
  2. thread starter macrumors newbie

    Joined:
    Jan 26, 2011
    #2
    Unified iPod Media App

    This edit is credited to: tinyman392

    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.

    Navigate to: System/Library/CoreServices/SpringBoard.app/N72AP.plist

    After the second <dict> line, add

    Code:
    <key>unified-ipod</key>
    <true/>
    Part 2 of this hack by: 42395_skyline

    Navigate to /private/var/stash/Applications/Preferences.app/Settings-iPod.plist

    Replace

    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>
    

    Note to Usage and Unified iPod users: InfinitiProject has suggested the following:


    Increase RAM with Dynamic_Pager

    I have been hesitant to add this hack to this sticky, due to the nature of this hack. This hack is extremely dangerous when used for a long period of time, and I do not recommended.

    Furthermore, those who are are inexperienced in plist editing, should stay away from this one.

    This hack is credited to Matt912836.


    Navigate to: /System/Library/LaunchDaemons

    Create a new plist called com.apple.dynamic_pager.plist (name really doesn't matter, just keep the naming format of com.apple.*.plist)

    Set the file permission to 755

    Inside the *.plist file, paste the following code:

    For a 512mb ram increase:
    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>
    		<string>-H</string>
    		<string>25165824</string>
    		<string>-L</string>
    		<string>564133888</string>
    		<string>-S</string>
    		<string>536870912</string>
    	</array>
    	<key>RunAtLoad</key>
    	<true/>
    </dict>
    </plist>
    
    For a 256mb ram increase:

    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>EnableTransactions</key>
    	<true/>
    	<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>
    		<string>-H</string>
    		<string>10485760</string>
    		<string>-L</string>
    		<string>285212672</string>
    		<string>-S</string>
    		<string>268435456</string>
    	</array>
    	<key>RunAtLoad</key>
    	<true/>
    </dict>
    </plist>
    
    Navigate to: /Library/Preferences

    Create a new plist called com.apple.virtualMemory.plist (name really doesn't matter, just keep the naming format of com.apple.*.plist)

    Set the file permission to 755

    Inside the *.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>
    Change the "slide to unlock" text:

    Ok I get it, trying to find a "how to" change the "slide to unlock" tutorial is hard. In fact, I too had difficulties looking for it, but to appease those who asked, I ventured into iFile and found a way (it is easy too).

    Warning: Before we start, I must say that we will be editing a *.strings file for this hack, not a plist. However, using iFile, we will be able to use the built in plist editor to edit this file. Nevertheless, if you are editing on your computer, bare in mind that some plist editors will distort *.strings files, which can lead to major issues.

    Navigate to:

    System/library/CoreServices/SpringBoard.app/English.lproj/SpringBoard.strings

    Look for the following label:

    Code:
    "AWAY_LOCK_LABEL" = "slide to unlock"
    Change the "slide to unlock" to anything you want.

    Save the file, and reboot the device.


    How to remove almost all ads from Safari:


    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."

    Thanks to touchhacker101, here is a simple method to disable ads from Safari.

    Navigate to: /etc/

    and replace your host file (can be done using iFile folks) with this.

    Finally, reboot device

    Simple right?

    Okay, so this was to simple. Now what? Do you want to spice it up by remove some more ads? Don't mind doing things beyond the iFile realm? Well if you answered yes to all of the above, here goes.

    Disable iAds

    Now you must install terminal for this (get it in cydia).

    1. Use iFile to add this file to your temp folder.
    2. Open mobile terminal (you can get this from cydia)
    3. type in: su root --> hit: enter --> enter your password (default password=alpine) --> hit: enter --> type in: dpkg -i /tmp/iAdsKiller.deb --> hit: enter
    4. leave mobile terminal and reboot device.

    How to remove your dock:

    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.

    Well thanks to maximreality, you can rest assure that your dock can be removed from your device.

    Like other hacks above, this does not deal with plist editing.

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

    Then, navigate to:
    Code:
    /System/Library/CoreServices/SpringBoard.app
    There, delete (after creating a backup, for restoring purposes):

    Code:
    SBDockBG@2x.png
    Finally reboot your device.



    What is missing:

    Hopefully. in the near future I will be posting some plist editing tweaks on the following subjects:

    1) Enable Mono Bluetooth for iPod
    2) Change carrier name (looking for the plist edit how-to)
    3) Multichat Face time (I am keeping up to date with 42395_skyline's thread.)
    4) Add hompage to Safari (Needs extra coding, not a simple plist hack.) ***Update 11/7/10 This appears to be possible. I am working on it.
    5) Change Orientation Lock (to enable landscape lock)
    6) Allow iTunes App store to switch over to Landscape mode

    Am I missing something? Let me know.
     
  3. thread starter macrumors newbie

    Joined:
    Jan 26, 2011
    #3
    Most of you are constantly checking this sticky, to see if new updated hacks have been posted; and with good reason.

    However, instead of making you re-read the original thread each and every time, I will post new hacks right here.

    New Hack

    How to remove your dock:

    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.

    Well thanks to maximreality, you can rest assure that your dock can be removed from your device.

    Like other hacks above, this does not deal with plist editing.

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

    Then, navigate to:
    Code:
    /System/Library/CoreServices/SpringBoard.app
    There, delete (after creating a backup, for restoring purposes):

    Code:
    SBDockBG@2x.png
    Finally reboot your device.




    Update on one of the hacks



    Setup homepage in Safari:)


    Note: This hack is still in development, only experienced hackers should try this in hopes of assisting in further development


    Code:
    Edit:
    
    Code removed. Experinced hacker will be able to figure this out by looking at: /User/Library/Safari/SuspendedState.plist
    
    Set the plist permission to read only. This is why, it can never remember the session. We need a way to allow the iPod to read and write, but not override what is manually imputed.




    Upcoming hacks

    Location Services Fix
    Wallpaper/Infi loop of video
    Disable multitasking (easy to do): For those who hate this feature.
     
  4. thread starter macrumors newbie

    Joined:
    Jan 26, 2011
    #4
    Reserved space for new hacks.

    /Notice: Mods delete if this is not allowed.
     
  5. macrumors newbie

    Joined:
    Feb 26, 2013
    #5
    To remove multi-tasking you go to file://localhost/System/Library/CoreServices/SpringBoard.app/N72AP.plist
    Find where it says <key>multitasking</key>
    <true/>
    And change true to false
    Respring and you no longer have multitasking
     
  6. macrumors newbie

    Joined:
    May 29, 2013
    #6
    I dont have celestrial.framework folder, but i have celestial.framework but in there there was no file you say i have to look for( talking about increasing camera mp) i have ipod 4gen ios 6.1.2
     
  7. macrumors newbie

    Joined:
    Aug 2, 2013
    #7
    I am having the same problems. I have Celestial.framework but not Celestrial.framework(I too am running on an iPod 4th generation, but I am running on iOS 6.1.3). In Celestial.framework, I cannot find any of the files you said to look for. Is it(No Celestrial.framework) because I have iOS 6.1.3?
     
  8. macrumors newbie

    Joined:
    Dec 23, 2013
    #8
    Has anyone tried the add ram using dynamic pager hack

    I tried this hack, and it is stuck on the boot logo on startup. can anyone help me?
    I am running iOS 6.1.5 on a tethered jailbreak.
     
  9. macrumors 6502

    frifra

    Joined:
    Nov 29, 2008
    #9
    Would be nice to see some screenshots of your modified devices :cool:.
     

Share This Page