Is is possible to submit the app with base SDK iOS5.1 and with Default-568h#2x.png, so that application will not leave an extra black space?
Our normal application is working fine on iPhone5 leaving a black space from top and bottom, but if we just include "Default-568h#2x.png", will it work fine (the view displayed in complete area of iPhone5)?
There are lots of dependencies to support iOS6, so is it possible to submit the app with "Default-568h#2x.png" and base SDK iOS5.1?
It is impossible to submit the iPhone 5 full screen app which is built with Xcode 4.4.1 and iOS 5.1 SDK. I did the same thing to support both old devices of armv6/iOS 3.x and iPhone 5. But I got this reject message from itunesconnect. I think it is the new policy of App Store.
"Invalid Launch Image - You app contains a launch image with a size modifier that is only supported for apps built with the iOS 6.0 SDK or later."
just edit the size of Default-568h#2x.png with the same one of Default#x2.png splash screens, don't rename it, adjust only it size, it's how it worked for me, seems the binary does gets faked, my app it's waiting for the review don't know yet if will be approved.
I do not see any policy from Apple to forbid developers to submit apps based on SDK 5.1. My understanding is that if you develop on SDK 5.1 you should also test your app on iOS 6.
Having said that, iOS 6 SDK provides good features to help developers manage the layout, and Apple surely wants the developers to use the latest.
To avoid "Invalid Launch Image" problem on submitting app with iPhone 5 launch image using XCode 4.4.1, please following these steps:
Archive your App under XCode 4.5
Open Organizer, show your App folder in Finder, enter your App’s Products/Applications folder, copy Info.plist and archived-expanded-entitlements.xcent to your home folder.
Open your Info.plist (~/Info.plist) using XCode, and modify MinimumOSVersion from 4.3 to 4.0
Close XCode 4.5 and open XCode 4.4.1, open your App project and open your Target’s “Build Phrases” tab, add a Run Script, with shell “/bin/sh” and “cp -f ~/Info.plist ~/archived-expanded-entitlements.xcent “${TARGET_BUILD_DIR}/${EXECUTABLE_NAME}.app”
Re-archive your App, and it should pass App Store’s rule checker and in “Waiting for review” soon.
The app I submitted late October got online in early November. Someone said he used XCode 4.3.2 to submit app in the same way. It should be working for XCode 4.*
For more information, please also read this blog article.
I submitted by mid-feb my binary compiled on Xcode3.2.6 and only had the Default.png, my App got rejected due to a bug related to the 4" screens, some stupid sizing junk, fixed it and tested on Xcode4.6/SDK6.1 which requires that 568h#2x.png file, I added that image to my set , still compiled it on 3.2.6 and submitted my fix and it got automatically rejected with the same msg as here.
Then I just pulled that 568 file out and resubmitted hoping that since it went thru about 2 weeks ago it'd get past again, I triple checked my code on sdk6.1, recompiled/ressubmitted and got the same rejection so it seems like they are enforcing that min Xcode version NOW.
BUT .... guess what? I cleaned everything and twice and rebuilt & decided to give it a last shot, resubmitted and it passed!!! I'm on waiting 4 review now.
I've solved that issue the following way: I'm using iOS SDK 5.1 and Xcode 4.4.1.
Now I've added simply the Default-568h#2x.png to the upper folder of my App in Xcode but not with Xcode 4.5.1.
Then I've built the App through iPhone 5.1 Simulator and finally I've quit the Simulator.
Then go to ../users/myNameUser/Library/Application Support/iPhone Simulator/5.1/Applications/... search for your App and Copy the complete folder (e.g. F83221EA-1HB4-4947-9DH4-43D8QZ3FFEA3).
Then go to ../users/myNameUser/Library/Application Support/iPhone Simulator/6.0/Applications/ and paste in the copied folder from the 5.1 Simulator.
Finally open your Applications folder go to your Xcode App (4.5.1) then right click and show package content: Go to ../contents/applications/ and double click "iPhone Simulator.app".
Now you are running the new iPhone Simulator with your iOS SDK 5.1 App. Great job? Now you can change the hardware of the simulator to the new iPhone Retina-4-inch.
And you can see how your App will look like on the new iPhone 5.
I've sent my new App version by that way for review - well see if it'll get through.
(Sent with: Xcode 4.4.1 and iPhone 5 support like described on top)
By the way it could be interesting to run Apps from Xcode 4.4 on real iOS 6 Device?
How to do that: Use iOS 6 device for testing with Xcode 4.4 and iOS 5 SDK
Related
Uploadifive version 1.1.2 is not working on iPhone and iPad running iOS 8
Try the demo using iPad or iPhone running iOS 8 at:
http://www.boxorox.net/
Clicking the Select File button allows you to choose a file from the mobile device.
Then clicking Upload Files does nothing, the upload never starts.
Apparently there is a new bug on _file_input_ field that was introduced in iOS 8.0.
Since last week Apple has gone ahead and fixed and then reverted it too. I recommend you wait for the iOS 8.0.1 upgrade to be available and then hopefully it will start working again as expected.
Until then, I'm afraid there is very little you could do about it. Here is the stream of Apple's Web Development
team to give you details about it. Have a good one!
This issue has now been fixed for Safari in iOS update 8.0.2
Note: uploading is still broken on Chrome running iOS 8.0.2
I've been wasting my whole day on this issue, and could not find a solution:
I've been developing an application with iOS 6.1 SDK, and the whole design relies on the iOS 6.1 UI. Yesterday, I've updated my phone to iOS 7, and after the update finished, the previously deployed app, which came back from the backup looked and worked the same as before (on iOS 6.1); everything was fine. However, I had to update my Xcode to version 5, so I can continue deploying successive debug versions to my iOS 7 device during development. Before updating to Xcode 5, I've backed up the iPhoneOS6.1.sdk package from Xcode's internal folder; then updated to Xcode 5, and then placed the iPhoneOS6.1.sdk package back in its folder, next to the iOS 7 SDK, which came with the Xcode 5 installation. I've switched my project's base SDK to iOS 6.1, which did came up in the base SDK selector list, and made sure in the interface builder that all my storyboards/XIB's are set to build as iOS 6.1.
However, when I deploy the application to my phone, it looks like crap, as it's shown with iOS 7 UI elements. If I use a device with iOS 6.1 installed, everything looks fine; it looks like XCode doesn't give damn about my choice of base SDK, and links the application against iOS 7, if I choose to debug on an iOS 7 device.
How can I force Xcode, to deploy the same 6.1-linked stuff to all devices, regardless of it's installed iOS version?
Find and download old SDK. Older SDKs are found here,
https://developer.apple.com/downloads/index.action?name=Xcode
I have copied the xcode.app directory as Xcode_4.6.3.app.
Now you can test and debug in both xcode versions. You have to run them from the corresponding folders or create shortcuts in your desktop. When I build from command line i give the parameter as iPhoneOS6.1 instead of iPhoneOS7.0
This worked great for me in Xcode5 and iOS.
Go to into Xcode5's SDK dir. Add a symbolic link to the old SDK like this:
ln -s /Applications/Xcode_4.6.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk iPhoneOS6.1.sdk
In Xcode 5 toolbar, for your target you will see your device listed twice (you also mentioned this in your question ). For some weird reason one is building with iOS 6.x appearance and the other with iOS7 appearance. Trying building/running on one of the device from this list. If you still see the iOS7 appearance, click the stop in the toolbar, select the other device and build again.
I am not seeing any crashes in Xcode 5, so you may want to reinstall if it is crashing a lot for you.
Firstly, you will need to copy and paste the iOS 6.1 SDK from a previous version of XCode. I believe other people have given instructions on how to do this.
Then, assuming you intend to continue development for iOS 6 (for example, without breaking the iOS 6 UI, and you don't intend to use new APIs), do this:
XCode should recognize 2 devices every time you plug in an iOS 7 device to your computer
Run the application on both of them (they are the same device actually, but one of them will be running the application iOS 6-style, and the other one will try to update it to iOS 7-style)
Remember the one running the app iOS 6-style (for me it's the topmost), and do Product > Archive on that device
This should keep on allowing you to build your applications with the iOS 6 style UI, at the same time allowing you to use Xcode 5. I would recommend starting a new development branch exclusively for UI changes to get your app's UI iOS 7 compatible.
I spent many hours trying to figure this issue out. Apple continuously accepted my uploaded binary when I was submitting my app through XCode4.2, yet only to declare the binary invalid minutes later. It turned out that it was because I had placed the "Default-568h#2x.png" in my resources folder in an attempt to support iPhone 5's splash screen and eliminate "letterbox mode" (black top and bottom bars)... I am using a 2006 MacBook Pro, and thus am unable to upgrade to Lion OS or Xcode4.5. Also, I am able to build AdHoc versions for my customer that runs just fine on the iPhone 5 (filling its entire screen).
Does anyone know of a workaround I can implement to get Apple to accept my binary while still being able to support iPhone 5's larger screen (no black top or bottom bars)? If I re-name "Default-568h#2x.png" I am able to get Apple to accept my binary, but will I lose compatibility with iPhone5?
I found the following link in my search, which seems to suggest the startup image has nothing to do with the iPhone 5's letterbox mode, and can be labeled any name. However, I must admit, I am rather lost when the writer begins discussing 'viewports' and 'media queries'...
http://www.mobilexweb.com/blog/iphone-5-ios-6-html5-developers
Thanks in advance for any help you can offer!
Apple has made a deliberate decision to only allow two types of apps:
Apps built with XCode 4.4 and earlier, built for iOS up to version 5, including support for armv6 (required for iPhone 3G) but without support for iOS 6 and without support for the larger screen of the iPhone 5.
Apps built with XCode 4.5, built for at least iOS 4.3, possibly supporting the larger screens (Default-568h#2x.png) but without support for iOS before 4.3 and without support for the armv6 architecture (required for iPhone 3G).
All others apps are now rejected if you upload them to the App Store. Your app is rejected because it's includes Default-568h#2x.png and one the following things: either armv6 support or support for iOS before 4.3.
Without XCode 4.5, it's impossible to create an app the support the larger iPhone 5 screen and is accepted by Apple.
Some people have managed to build and upload applications the support both iPhone 3G and iPhone 5. But this is very tricky and requires a parallel installation of at least XCode 4.5 and one earlier version.
Update:
If I'm not mistaken, the crucial points for supporting the larger screen are:
The launch image Default-568h#2x.png
The setting of Base SDK being iOS 6 (or later)
If you add the launch image without setting the Base SDK to iOS 6, iTunes Connect will reject you app:
"Invalid Launch Image - You app contains a launch image with a size modifier that is only supported for apps built with the iOS 6.0 SDK or later."
Without XCode 4.5, you cannot select iOS 6 as the Base SDK.
I was able to install iOS 6.0 SDK on my XCode v4.2 following these instructions:
Is it possible to get the iOS 5.1 SDK for Xcode 4.2 on Snow Leopard?
Afterwards, I could create a binary with the below attributes that Apple would accept.
The launch image Default-568h#2x.png
The setting of Base SDK being iOS 6 (or later)
I have have a Mac mini from 2006, running Snow Leopard, Xcode 4.2. I was having the exact same problem with my submissions last night (May 2, 2013). Organizer uploads the app, and says all is fine. Within a couple of minutes The email below comes through. I did what the email suggested. Then I double checked, triple checked all settings, recreated certificates/profiles....still invalid binary.
Early in development, I was able to crack a dmg to get iOS6 installed on my machine. I put Default-568h#2x.png in my app. I tested ad hoc installations on a 5th gen iPod Touch - everything worked fine, BUT Apple won't accept my app.
I was going to get a new mac this year anyway. I'm heading to the Apple store to get one tonight. Here's the email from Apple:
Dear developer,
We have discovered one or more issues with your recent delivery for "Gazoodle Colours". To process your delivery, the following issues must be corrected:
Invalid Signature - Make sure you have signed your application with a distribution certificate, not an ad hoc certificate or a development certificate. Verify that the code signing settings in Xcode are correct at the target level (which override any values at the project level). Additionally, make sure the bundle you are uploading was built using a Release target in Xcode, not a Simulator target. If you are certain your code signing settings are correct, choose "Clean All" in Xcode, delete the "build" directory in the Finder, and rebuild your release target.
Once these issues have been corrected, go to the Version Details page and click "Ready to Upload Binary." Continue through the submission process until the app status is "Waiting for Upload." You can then deliver the corrected binary.
Regards,
The App Store team
Update: Got a new macbook pro, built my app with the latest Xcode (4.6.2) and resubmitted the app. My app is finally in the Waiting for Review state. Wasn't sure buying a new computer would solve the problem, but it was a good excuse to upgrade the hardware, and it actually fixed the invalid binary issue!
iOS project. Base SDK 4.2, deployment target 3.0. A customer is complaining about an issue on iOS 3.1 (he has an old device).
I tried installing Xcode 3.2.3 - the oldest there is for download. It does not offer iOS 3.1 as a test target. Does anyone know how can I enable older versions of iOS on the simulator?
The box also has Xcode 4 (in a different folder). Could it be the case that they're sharing the iOS simulator, and the backwards-incompatible one from Xcode 4 is getting in the way?
There is no substitute for testing on a real device.
I've had a problem with my iPod touch (3rd gen, ios 5.0) crashing in one app. Every day. The dev won't buy, beg, borrow or steal a real iPod touch to test it on so he can fix it. As a user this is extremely frustrating.
EDIT:
The final versions of Xcode with the iPhone SDK, as it was called then, are not available from Apple's download page, but the direct links still work.
The direct links can be found at:
http://chris-fletcher.com/2010/08/28/howto-install-iphone-sdk-2-0-3-1-for-xcode-3-2/
If you use the latest Xcode, you can install device debugging support via the Downloads->Components section, a la: http://cl.ly/3U1V1G3W2p2E1G29342e
http://iphonesdkdev.blogspot.com/2010/04/old-versions-of-iphone-sdk.html
Some of the links are dead though. Apple is removing those old files little by little. Get them while supplies last.
I am going through the Apple provisioning profile walkthrough documentation to create the binary to submit to the app store but came across a very visible problem.
The documentation shows that when the user clicks on the "Overview" tab in Xcode they should have a list of options such as:
Device - iPhone OS 2.0,
Device - iPhone OS 2.1,
Device - iPhone OS 2.2 (Project Settings),
Simulator - iPhone OS 2.0,
Simulator - iPhone OS 2.1,
Simulator - iPhone OS 2.2
However, in my version of Xcode, the "Overview" tab brings up this:
Device,
Simulator
I am wondering if this could possibly be contributing to the reason that the app store will not accept my binary - the error stating that "Apple is not currently accepting apps built in this version of the OS." Any ideas on what I am doing wrong?
EDIT:I have checked everything that I can possibly think of - this is the final SDK 4.0 that is the most current. I have tried almost every combination of base SDK and target SDK that is allowed in the build menu - although I am pretty sure the correct way is to have the base SDK at 4.0 and the target SDK at the lowest that it would possibly work - none of this works. Is there some sort of help desk I can call at Apple because I have been working on this one tiny problem now for about 10 hours and I am not making any progress at all.
Seams that you have and old SDK, try to download SDK4 final (not the beta).
Or your compiling options are old, to edit them right click on the project icon in the left column and click "Get info".
In the second tab (build) you should find all the options you need.
Must have been some recent changes to xcode. Everything worked once I set the Base SDK to 4.0 and the target SDK to 3.2.