How build Xamarin against older version of iOS SDK - ios

I'm trying to build my Xamarin Forms app for the Apple store using Xamarin Studio on my MacBook. This worked fine until recently.
The only options available to me on the SDK version dropdown on the iOS Build tab are Default and 8.3. If I build using either of these and try to upload to the store I get the following error:
ERROR ITMS-90068: "This bundle is invalid. The value provided for the
key MinimumOSVersion '8.3' is not acceptable."
I guess this is due to updating all Xamarin and Xcode components to their latest versions recently.
I'm trying to figure out how to get the 8.2 SDK back.
I tried downloading the iOS 8.2 Simulator from Xcode > Preferences > Downloads but that doesn't seem to have added anything in the Xamarin SDK version dropdown.
Any ideas?

You're confusing the SDK version used to build your app with and the minimum iOS version your app requires.
It's perfectly possible to build an app using the iOS 8.3 SDK and target iOS 5.1.1 for instance.
You need to set the minimum iOS version for your app instead of changing the SDK version; this is done in the project's iOS Application options, by setting Deployment Target to your app's minimum iOS version.

This is what I did to resolve the issue:
Right click on the .iOS project > Options
Set Build > iOS Build > Link behaviour to Link Framework SDKs Only.

Related

Error in using Speech to text functionality in xamarin ios

I am trying to use "speech-to-text" functionality in xamarin ios. But I am getting following error after adding "Using Speech;" in my class file.
Your application is using the 'Speech' framework, which isn't included in the iOS SDK you're using to build your app (this framework was introduced in iOS 10.0.0, while you're building with the iOS 10.0 SDK.) This configuration is only supported with the legacy registrar (pass --registrar:legacy as an additional mtouch argument in your project's iOS Build option to select). Alternatively select a newer SDK in your app's iOS Build options.
How I can use "Speech" in xamarin ios app?
Check your Xcode version first. Whether is the latest version.
Check also iOS project Options->iOS Build->SDK Version, whether is using correct SDK version. For mine, it is set to Default which is 10.3 now.

Compiling legacy code using iOS 7 SDK breaks app

I have a developed application and the code is compiled using Xcode 4.6 and executes on iPhone with IOS version 6.1.3 . That's all OK.
Now I am requested to test it on the iOs 7.0 or later version . Then I upgrade all needed stuff , including xcode, mac OS version ,etc. (I have to upgrade them because the original version of xcode complains of the failure that it can not compile and debug on ios7.0)....
When I try to build the code using the latest combined versions and run on ios7.0, the application is dysfunctional and the problems are mainly related to GUI-related.
But the application with xcode 4.6 built can normally run on IOS 7.0.3 phone. So I think it is feasible for the legacy code/SDK to run on ios 7.0.3. Currently, I don't have plan to upgrade the code to optimize for ios7.
So My question is : How can I test/debug this application on iOS 7 or later ?
Thanks alot
Daniel
If i am not getting wrong understanding from your question...And what you want is this..
You don't want to build your application using iOS 7 base sdk (You were using iOS 6 base sdk on xcode 4.6).
But you want to use latest xcode with old SDK 6.1 etc and test apps on iOS 7 Devices/Simulators
Here is solution...
You just need to copy 6.1 SDK(or older) from your old xCode(4.6) to latest xcode(5.x) sdk folder and set base sdk to 6.1 SDK(or older one) in project setting.
This will let you run your app on devices with iOS 6.x or lower as they were running before also lets you test your app on iOS 7 devices without compiling with latest iOS 7 SDK.
To achieve this..
1. click on your xcode4.6 -> show package content , go to path
/Applications/Xcode_4.6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
This is where you will see older SDK you were using (6.1 etc). Now open same path for latest xcode 5.x and copy SDKs from old xCode path to new xCode path. OR Download it from Xcode preference -> Downloads.
2. Now go to project setting and set base sdk as iOS 6.x SDK
You can use Wireless AdHoc Distribution or simply build the IPA and install it through iTunes. Debugging it, however, is a bit more complicated. You will have to launch Instruments on its own and choose the already running process on the device.

in Xcode, older iOS SDK missing--for pre-existing project only

I recently upgraded to Xcode 4.5.1 to compile an app under development for the new iPad. That worked fine, but when I went back to run it on my old iPad under iOS 5.1 it wouldn't compile. I traced this back to the "Base SDK" setting in my project. Unfortunately, for some reason it's stuck on iOS 6.0, and iOS 5.0 SDK is not in the list:
The puzzling thing is that a the iOS 5.0 and 5.1 SDKs are available if I start a whole new project, but are just not an option in the list for this particular project. The other puzzling thing is that it also still runs on the iOS 5.0 simulator.
How to fix this without rebuilding the project from scratch?
Actually, under Xcode 4.5.x, the only allowed Base SDK is 6.0. You need to set your project's (and target's) Deployment Target to iOS 4.3 or later depending on what you wish to support in your app.
The Bask SDK defines what APIs you can use. The Deployment Target defines how far back you wish to support.

How to build and test Xcode iOS SDK 4.3 project in iPad 2 iOS 5?

I'm wondering if I can build and test my current project which is iOS SDK 4.3 based, to iPad 2 (iOS 5)? In Organizer - Devices it says:
The version of iOS on “my iPad” does not match any of the versions of iOS
supported for development with this installation of the iOS SDK. Please restore
the device to a version of the OS listed below, or update to the latest version
of the iOS SDK;
Can I build my project without updating to iOS SDK 5?
No, this isnt possible, you must upgrade to the lastest Xcode.
It is possible to have two versions of Xcode installed if you still want to hang onto the old one.
What is the reluctance to upgrade? Are you having compiling issues?

Where can I get the iPhone 2.0 SDK?

I just set up a new macbook pro, installed xcode and the latest iphone SDK; However, I have an iPhone app that needs to target the 2.0 SDK.
I have 2.2.1, 3.0, and 3.1 available in xcode, but for the life of me cannot figure out where to get 2.0. I have scoured the iPhone Dev Center without any luck.
The latest SDK allows you to target older versions.
You specify the SDK Xcode uses to build your application in your project’s Base SDK build setting, which you can set in:
Project > Edit Project Settings > Base SDK for all Configurations
alt text http://developer.apple.com/iphone/library/documentation/Xcode/Conceptual/iphone_development/art/project_info_general_base_sdk.jpg
Read this Apple page for more info.
I think it comes with the current X-Code but its only optional on installation. I could be wrong, I just installed X-Code last week and I think there were older SDKs available.

Resources