views:

82

answers:

1

Here's the deal, I had this app working since iPhone OS 3.0 came out, now I made some changes to take advantage of iOS4.x, and compiled against 4.0 with xcode 3.2.3, I have 4 jailbroken devices:

  • 2 iPod touch 2G iOS 3.0
  • 1 iPad iOS 3.2
  • 1 iPhone 4G iOS 4.0

When I run & debug from xcode (with an Apple provisioning certificate) the app works fine on every device.

The problem comes when I try to run the ldid signed app in the iPods running iOS3.0, here's what I've done:

I copy my app thru SSH into the devices' /Applications folder and do chmod 755 , ldid -S mybinary and respring, when I launch the app on iOS 3.0 it closes inmediatly, as it does when it hasn't been signed, but it works fine with the devices running 3.2 and 4.0.

I removed the new pieces of code and compiled with old xcode (3.2.2) and did the same procedure, and it worked on iOS 3.0.

I think it's related to code signing cause it works with apple's certificate and with devices running 3.2 and 4.0, probably due to jailbreakme, since I think it disables codesign checks.

Does compiling against 4.0 or with xcode 3.2.3 interfere with ldid signing? What are your thoughts on getting this to work on iOs 3.0+?

+1  A: 

Apparently ldid doesn't like the binaries compiled with xcode 3.2.3, I followed the steps on this answer and got it working, thank you a lot.

Leg10n