This is a bit tricky, but not impossible and quite an easy process. First of all let’s see what with this .plist files? In the Mac OS X Cocoa, NeXTSTEP, and GNUstep programming frameworks, property list files are files that store serialized objects. Property list files use the filename extension .plist, and thus are often referred to as plist files.
Property list files are often used to store a user’s settings. They are also used to store information about bundles and applications, a task served by the resource fork in the old Mac OS.
[via Wikipedia]
Ok, so how to we edit such files on Windows? Well there are two different ways. The easy short way for advanced users, and the easy long way for really curious advanced users. If you do not know what to do with them, do not fool around. You either let them be, or precisely follow various tutorials you might find.
Method 1. Easy short way
Part I
You can install Erica’s Utilities via Cydia on your iPhone or iTouch. The package contains an app called “plutil” that will convert binary plists to xml format. Once they are converted to xml, you can copy off your device and open them with any text editor. Notepad of Wordpad will do just fine, but i really suggest you use a good word editor like notepad++.
When you SSH into your device you will find Erica’s Utills to be installed to /var/root/bin
Part II
You can also use the various web-based binary to xml plist converters. A simple search string in Google will give you tons of such web apps.
click to enlarge
This method is (probably) the fastest method you can use for different tasks that you might want to perform. ( i.e for the tutorial we wrote back in the 2.x FW days: HowTo: Modify Cracked iPhone .ipa Files To Work On Lower Firmwares )
The second method is much more efficient if you are stuck at the boot logo. A few months ago, we wrote a tutorial on how to fix iPhone stuck at Apple logo, but that was in a way too vague, and maybe not accessible to all users.
iPhones get stuck at the Apple boot logo due to what is most probably a screwed up com.apple.Springboard.plist file.This can happen for many reasons, the main one being improper installation/uninstallation of packages (main script execution failed) via Cydia.
You can fix this problem by SSHing into your iPhone, but there are some people that have SSH turned OFF or even worst , they didn’t install it in the first place. And that could be a problem.
Method II. Easy Long Way
If you’re stuck at the apple logo, connect your iPhone to your PC – itunes will recognize that “an” iPhone is connected to it, but it wont identify the iPhone as being your iPhone.If your phone is off , turn it on so that it goes back to the apple logo – before connecting it to your PC.If your phone is in restore mode – again – turn it off and turn it on – so that it goes back to the apple logo – before connecting it to your PC.
Once you’re connected to your PC, and itunes recognizes “an” iphone, you’re out of danger. i.e. you wont need to restore your phone, even though you do not have SSH installed, or, even if you shut off SSH.
Next step would be to download and install iPhoneBrowser. When you run iPhoneBrowser, the software might say that no iPhone is found. If that is the case, than disconnect and reconnect your device and iPhoneBrowser will recognize it.
Navigate to /System/Library/LaunchDaemons/com.apple.SpringBoard.plist and backup com.apple.Springboard.plist to your PC.Download and install EditPadLite from EditPad Lite – Free Text Editor for Windows . Than rename com.apple.Springboard.plist to com.apple.Springboard.plist.txt
After changing the file extension form .plist to .txt, open it wit EditPadLite ( Wordpad or Notpad wont work ) and edit the file by removing the the offending key in the DYLD_INSERT_LIBRARIES – usually this would be the .dylib key corresponding to the last application you installed or uninstalled, and which is probably the one causing your iphone to get stuck.
EXAMPLE:
<dict>
<key>DYLD_INSERT_LIBRARIES</key>
<string>/Library/Frameworks/SpringBoard.framework/SpringBoard.dylib:/Library/Intelliborn/intelliScreen</string>
</dict>
Let’s say that IntelliScreen was the problematic package ( usually was ). You will want want to just delete the .dylib key relating to it, from the DYLD libraries.Each .dylib key is separated by a colon.
Once you’ve deleted the problematic key, save the file, close EditPadLite and edit the file back from .txt to .plist. Restart iPhoneBrowser and navigate back to /System/Library/LaunchDaemons/com.apple.SpringBoard.plist.Delete the com.apple.Springboard.plist file on your phone and copy the one you just edited.Now turn off your iPhone and turn it back on. It should boot just fine, and you’ll have a fully functional iPhone.
There are extreme and rare cases when there are a couple of apps that caused iPhone to be stuck at boot logo. In that case you will want to delete delete all the .dylib keys and your file will look like this
<dict>
<key>DYLD_INSERT_LIBRARIES</key>
<string></string>
</dict>
Once all offending .dylib keys, corresponding apps and launchdemons have been deleted, disconnect iphone from your PC, and reboot. It might take a little longer than usual, but if all goes well, you will find that your iphone is back in working order.
[ thx Draxx from modmyi ]
NOTE: if anybody knows how to fix the Cyrillic fonts issues so that russians for example wont get only “???????” when they try to edit the plist file, let us know….