Mar 7, 2011

How to Fake Code-Sign iPhone Application for Cydia

If you want to release your application on Cydia, you must fake code-sign so that every device can use it without problems.

First thing first, Things you will need -->

1. ldid
2. mobileTerminal

Both can be downloaded from Cydia.

Now,

-- Go To /Developer/Platforms/iPhoneOS.platform/Developer/SDK/THE_SDK_VERSION_YOU_ARE_USING/

-- Then copy SDKSettings.plist to somewhere to edit

-- Open that plist and under Default Properties, change the following

CODE_SIGNING_REQUIRED to NO -> then save it

-- Copy that plist and overwrite the original plist (you might need to enter yr mac password, etc)

-- Open up yr xcode project

-- Go to Project Settings, under code signing - change Code Signing Identiy - Any iOS to Don't Code Sign (image: http://d.pr/y3Uw) and then just* Build (NOT Build and Run)

-- If you did every step correctly, you would be able to build without errors

-- then find your package your package should look like this (image: http://d.pr/zdkX)

-- Copy that file to your iDevice, open up mobileTerminal and enter the following lines

-----

su
yr_password
cd your_package_dir/your_package.app (for example: if your package is example.app which is inside /var, type cd /var/example.app)
chmod 755 your_package (changing yr_package binary permission to 755)
ldid -S your_package

----

After that you may see the errors like

util/ldid.cpp(576): _assert(2:false)
util/ldid.cpp(582): _assert(0:WEXITSTATUS(status) == 0)

which is not a problem.

Then respring your device and you get the fake code sign package.

That's about it. I hope it helps you in some ways. If you aren't clear about something, leave a comment.
peace.


.

2 comments:

  1. Hi ! I have some questions about your post, perhaps you can help me.
    I compiled my Iphone app (not the way you explain here, with toolchain) and Im trying to make a cydia package from it, so that it can be installed to some other 5 phones. How can I make a cydia package that doesn't need user interaction to get my app installed ? Do all the phones need to have ldid installed ? Once the app is fake-signed, will any phone run it without problems ?

    Thank you very much ! I hope you can help me since I cannot find this info anywhere !

    ReplyDelete
  2. How do i code sign a ringtone or theme???

    ReplyDelete