I have a universal app built that runs and works perfectly on an iPad, iPhone 4G, 3GS & 3G, but when run on an iPod Touch 4G it won\'t run properly.
I don\'t hav
So after some trial and error I worked out what the problem was (actually two separate but related problems):
In my info.plist
I was using two keys to assign the different MainWindow files:
Main nib file base name (iPad)
and
Main nib file base name (iPhone)
I mistakenly thought the second key would apply to the iPod Touch also as there is no Main nib file base name (iPodTouch)
key. Turns out this is wrong and the iPod Touch actually looks for the Main nib file base name
key. So now I have it setup like this:
..and it's working fine in 3.1.3 & 4.2. (Note that application:didFinishLaunchingWithOptions
is not called if the device can't find a MainWindow to use, that's how I worked out the problem).
I suspect the same will apply to the Launch image (iPad)
, Launch image (iPhone)
and Launch image
keys, which would explain why the iPod Touch is using the iPad launch image but haven't been able to try it yet.
There's currently a jailbreak technique that uses some of the iPad firmware to install on an iPhone or iPod Touch. In theory it shouldn't affect anything, but I've never done it myself so I can't vouch for that. You might ask if this tester is on a jailbroken device, and if so try on a non-jailbroken device.
I am not sure it will work, but it may help you.
Make sure that, in the InterfaceBuilder, the attribute(visibleAtLaunch) in main window is checked.
Some times if it doesn't checked then it will show black screen.
Make sure the Default.png
s are correctly named:
Default.png
(Default)Default~iphone.png
(iPhone or iPod touch)Default~ipad.png
(iPad)For the iPad resources you can also specify certain default PNGs for each orientation.