I have been able to make xCode 4.3.2 work with iOS 6.0 using the technique described here Is it possible to get the iOS 5.1 SDK for Xcode 4.2 on Snow Leopard?
When I add AdSupport.framework or other iOS 6 specific frameworks, it builds fine against the iOS device scheme with no device connected. However, as soon as I connect an iOS device it gives erros 'framework not found AdSupport'. It does not even compile against iOS Simulator 5.1
I am using iOS 6.0 as base sdk and tried deployment target of 4.3 upto 5.1 but still same error.
AdSupport.framework is only available beginning on iOS6.
You should mark the framework as Optional (Weak Reference) and ensure that when running on iOS versions below 6, that the AdSupport code is not called.
Related
I develop on ipad IOS 6.1.3 on XCode 4.6.
By mistake, ipad was updated to IOS 7.0.4.
So, How can I make iPad with IOS 7.0.4 works on Xcode 4.6 ?
Or, How can I restore iPad from IOS 7 to IOS 6.1.3 ?
My Mac os is 10.7.5
I can't complete my work..
Thank you
Very soon Apple will stop accepting apps that are built using Xcode 4.6, so you'll want to work on your app using Xcode 5, unless you don't plan on releasing your app.
As for downgrading your iPad, I don't think that's possible any longer. It used to be possible to downgrade from iOS 7 beta versions to iOS 6, but I think once iOS 7 was officially released that it is no longer possible.
My suggestion would be to upgrade your Mac OS version so you can install Xcode 5, and continue development. If you want users to use your app, they'll want it to be built with Xcode 5 so that it has the new iOS look anyway. After using iOS 7 for a while, apps that have the iOS 6 look still seem very dated.
i changed the base sdk for iOS 6.1 in xcode 5 .
When i simulate my project on a iOS 6.1 simulator or on a iOS 6.1 device
all works fine. But when i build a ipa and install it on a iOS 7 device
the device use the iOS 7 sdk and my hole app looks weird. I changed my base
sdk for iOS 6.1, so why use my device the iOS 7 sdk?
I read that iOS 7 use the iOS 6.1 sdk for old published apps.
What do i have to do that iOS 7 also do that for my app?
My only idea is to install xcode 4 again...
I have experienced the same problem - unfortunately only discovered AFTER submitting to the app store and the app being approved and released, causing all sorts of mayhem due to interface glitches.
The issue occurs due to a bug in XCode 5 (including in XCode 5.0.2 it seems) that is triggered when you install older SDKs.
When you have multiple SDKs installed, you will see that when you connect your device to XCode, there are multiple entries for your device, with no way to tell them apart. But it appears that the TOP entry is for the OLDEST SDK you have installed, the BOTTOM one for the NEWEST SDK.
I have found that if I first use "Test" project option to run the app on the device with the SDK I want to use (in my case the top entry, which is for iOS6.1 SDK), then that is the SDK that will subsequently be used when I archive the app.
You can have both xcode 5 and 4.6.3 installed.
Also a lot of post say that in the simulator it look iOS7 but on device it will look iOS6.1 if you set the base sdk to 6.1
see:
Is it possible to install iOS 6 SDK on Xcode 5?
Do apple allow custom iOS 5/6 style UI for iOS7?
I'm working on an iOS app that I wrote with Xcode 4.6 and iOS 6.x. Now that XCode 5 has been released alongside with iOS 7, I wanted to support both iOS 6.x and iOS 7.x by using either XCode 4.6 or XCode 5. What is the best way to approach this?. Can I just toggle between iOS 6.x SDK and iOS 7.x SDK from within XCode 4.6 or do I have to upgrade to XCode 5 to accomplish this?.
Please advise.
XCode 4.6 will not support iOS 7 by any means. You will only be able to build iOS 6 apps that will run on iOS 7, but you will not be able to use new iOS 7 SDS features.
If you want to support iOS 7 features, you need to use Xcode 5. This might also cause some visual issues in your app.
My suggestion is to migrate to Xcode 5 and then check that everything is ok in your app, or do the required changes so that it works fine on iOS 7.
In any case, you can safely go back to Xcode 4 from Xcode 5, if you see that anything does not work out as expected.
I want to keep Deployment Target to 4.2, to support iPhone 3G/S, as that device cannot upgrade it's iOS to any higher. I kept my XCode in version 4.2 and the Base SDK as iOS 5.0, as the newer versions do not support older iOS's.
My app gets rejected with the message:
iPhone 5 Optimization Requirement - Your binary is not optimized for
iPhone 5. New iPhone apps and app updates submitted targeting iOS 6
and above must support the 4-inch display on iPhone 5 and must include
a launch image with the -568h size modifier [...]
So I add the launch image Default-568h#2x.png. But then I get rejected with the following message instead:
Invalid Launch Image - 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.
It seems like a catch 22. Do I have to change my SDK, and to what? Am I doing something wrong, or can I simply not deliver to iOS 4.2 any longer?
I'm developing an iOS App which targets iOS 5.1+. I'm using XCode 4.5 on Mac OS X 10.8 and I do own an iPhone 4 with iOS 5.1.1. The app needs OpenCV, which I have successfully built from sources according to a tutorial in the OpenCV-Documentation.
Here is what happens:
When I start up the application I get an exception:
dyld: Symbol not found: _objc_setProperty_nonatomic
The error does not occur with iOS 6, but with iOS 5.1 in both the simulator and on a real device.
What is that? Is it related to OpenCV? Does it have to do something with incompatibilities between iOS / the iPhone / XCode??
EDIT: My development target is set to 5.1. The Base SDK is 6.0. I copied an SDK für 4.3 (which is the lowest version that XCode 4.5 will support) from another Mac and set development target as well as the base SDK to 4.3. Did not work either (it did not even build then).
I did not an update, the project has been started from scratch using XCode 4.5 initially.
Meanwhile I also found a tip to use gnulibc++ instead of libc++, but that also resulted in that the project did not build at all.
I built a test project and found the same issue. OpenCV is being built with a deployment target of ios6, this is a known issue, and a fix is pending review, see https://github.com/Itseez/opencv/pull/70