I have developed the app using Base SDK 4.3.
I want to make sure my app is iOS 5 compatible.
In that case, should I change my base SDK to 5.0 or keep it at 4.3 and test it in iPhone 5 Simulator?
Please let me know.
Thanks!
Here is what I have done on mine:
Once you installed the latest version of xCode 4.2, you can't go back to SDK 4.3.
A. So Base SDK will be set at SDK 5.0.
B. If you still want to support iOS 4.3 devices then set your "iOS Deployment Target" to iOS 4.3 or whatever minimum version you still want to support.
C. Now you can test your app on Simulator/devices with iOS 4.3 or whatever minimum version and iOS 5.0 as well.
If you change your depoloyment target to 5.0, your app will be only available for devices that run iOS 5.0. Keep it at 4.3 (edit: sorry, you're talking about base sdk here, but still leave your depoloyment as is) and test in the iOS 5 Simulator. You should definately do the same to a device with iOS 5.0 as well! (Your base sdk is not relevant in your case -- change it to 5.0 if you need to use APIs from 5.0)
More about deployement targets here.
First of all if you want to make sure test on a real device instead of simulator.
Second, you should compile for iOS 5.0 and check any errors/warnings.
Third, you can set iOS Deployment Target for 4.3 and test on 5.0 simulator
Related
I want to know whether iPhone Simulator version (i.e. iPhone 5.0 Simulator, iPhone 6.0 Simulator, etc) and Base SDK are related to each other or not?
So, if I develop an App with Base SDK 6.0 and if I test it on iPhone 5 Simulator - does it mean that I am testing it on device with iOS 5.0?
Please let me know.
Base SDK
The Base SDK is the version of SDK that will be used when compiling your application – the compiler will use the headers and libraries of this specific SDK.
iPhone OS Deployment Target
To specify which OS version is the minimum that your application will support, you set the deployment target. Your application will then run on this minimum OS as well as all later versions.*
For more info check this:-
Link
The base SDK is an indicator of what APIs your compiler will allow you to use. Deployment Target determins the minimum OS version this app will be allowed to run on. If they differ you need to make sure in code that you only use functions/classes/methods/symbols that already existed on the older OS. or else the app will crash with exceptions like "unrecognized selector"
Your question is imprecise: there is no "iPhone 5 Simulator". There is a Simulator app that can behave like a 4" iPhone 5 on a variety of OS version levels. The Simulator set to iOS 5.x will behave like a device with this OS version would.
Nope. With a base SDK of 6.0 means that you are using a simulator with iOS6.0 like for example if you were to deploy an application with base SDK 6.0 on your mobile device with iOS 5.1 and below, you will not be able to run it
Just wonder if the app(target os below 4.3) can run on ios6.
xcode 4.5 can not build the target below 4.3, does this mean ios6 does not accept app with os target below 4.3?
Welcome any comment
Almost all apps built for older iOS versions will be able to run on future iOS versions. However, you will have difficulty building older iOS apps to newer iOS devices. Also, be careful when you release. I had been working on one of my apps in iOS 4, and it was rejected for crashing. I updated my xcode and realized some of the old code didn't work in iOS 6.
an app targeted below 4.3 should be able to run on iOS6 devices as long as the app is built with an xcode less than 4.5. at least that was the case with an app I work on and it didn't seem to cause any problems (that i'm aware of). the difference is if you want to update that app using xcode 4.5 you'll have to change the target build to at least 4.3.
We want to update our game to support the iPhone 5.
Do we need to upgrade Xcode to v4.5 and use the iOS 6 SDK??
[edit]Apple is now explicitly rejecting applications submitted with the iOS 5.x SDK and iPhone 5 default images, saying "Your app contains a launch image with a size modifier that is only supported for apps built with the iOS 6.0 SDK or later."
Old answer :
Yes you can use Xcode 4.4 or below to support iPhone 5.
The iOS (6) will run an app in letterbox mode if there is not a 640x1136 splashscreen image in your resources. The image must be called Default-568h#2x.png (if your splashscreen is Default.png in your Info.plist).
So just add this image on your Xcode project whatever version it is, and the app will run in full screen mode.
This being said, there are chances that Apple will not let you install an app compiled with Xcode 4.4 or below on an iOS 6 device (and of course no iPhone 5 simulator for Xcode 4.4 and below). [edit] As told in the comments, yes, you can install on an iPhone 5 / iOS6 with Xcode4.4.
All apps created with older SDK works perfectly on newer iOS versions, so iPhone 5 should also run every existing app without any problem, so you don't need to use the iOS 6.0 SDK to support iPhone 5.
I think you mean to ask to support iOS 5. If that is the case then you really do not need to upgrade your Xcode version. YOu can use iOS SDK 5.0 or iOS SDK 5.1 which contains Xcode version 4.2 and 4.3.
You really do not need to use iOS SDK 6.0 beta. I hope this may help you.
All the information about iOS 6 are under NDA, and the iPhone 5 is not even announced.
But there are rumors, that the iPhone 5 will have a screen resolution of 1136*640. There are hacks for Xcode 4.4.1 out there that make it possible to create that screen resolution in the iPhone simulator. So, I think that would be a viable way for testing the rumored new resolution.
Regarding iOS 6: if you are a paying iOS developer, you can download iOS 6 to test your app against it (We don't talk about products under NDA here).
You can use this receipt http://0xced.blogspot.co.at/2012/08/prepare-your-apps-for-new-iphone.html for start iOS Simulator (iOS 5 only) with new screen size.
Yes, You need to update your Xcode to build for iPhone5. Do the following steps for this:
Download Xcode 4.5 with iOS 5.1 SDK.
Build your apps with Xcode 4.5.
I can change my deployment target from 3.0 to 4.3 and test that my application is compatible with all these versions but how can I test if my application is compatible with all versions including iOS 5.0? Any idea regarding the same? Also note that I have iPhone 3GS with iOS 4.0.2 and need to test in iOS 5.0. Hope to get a good help. Thanks.
Eventually, you'll need to get a device that has iOS 5 installed. Without that, you can only test this in the iOS 5 simulator.
Also note that changing the deployment target is not enough to test if your app is compatible with that OS version. Basically, this just means that you promise that it'll run from this version upwards, but it doesn't enforce that you don't use any APIs that might not be available there.
I you wanna do it properly, you will have to get every device there is, with every version you want to support ... that is, imho, overkill. I just test my Apps on the 4.3 and 5.0 Simulator in XCode and on my 5.0 iPhone 4. And have not had any problems with that 'til now.
BTW you should update your 3GS to 5.0.1.
To test in the simulator with iOS5, you can set the OS version with the Version submenu of the simulator's Hardware menu.
I develop with xcode 4.1 and I'm testing my app with the iphone simulator 4.3. My application will work on ios 5 ? should i update to xcode 4.2 , I have not completed my application if I do the update now, I risk nothing?
Your application will work on iOS 5 but is hightly recommended to update your Xcode to 4.2 with all the iOS 5 sdk and new API's.
You should also test on iOS 5 if possible. Normally an app will run fine on iOS 5 even if it's built for iOS 4. It's your call on updating to the new Xcode–or if you even want to build or iOS 4.
You will have to test on iOS 5 in order to see whether works correctly. Generally an app will be compatible with a new version of iOS, but it might get some new bugs, this will depend on the APIs and libraries you used. You cannot say whether an app will run perfect on iOS 5. Therefore an upgrade to Xcode 4.2 is inevitable in order to correctly test your app on iOS 5.