hi i am new to iphone.i am installing the iphone sdk 3.2 with xcode 3.2.when i run the some pre defined examples it shows an error there is no sdk named iphone2.0.If i need to install iphone sdk 2.0 how can i install with out overriding the existing sdk means i need both sdk 2.0 and sdk 3.0. how can i done this pls help me.thank u in advance.
You don't. You always build/compile against the latest SDK. in your case that's 3.2. Just set your deployment target to 2.0 and you will run those devices - that is if you don't rely on features of later versions.
Just as a not: if you plan to submit you app to the AppStore, you must use 4.x and target 3.x minimum.
change the base SDK instead by scrolling down the list on the left in XCode and expand "Targets". Click on the name of the app inside this and press the blue info button at the top in the middle.
Make sure you have the "Build" tab selected and that you choose "All configurations" in the configuration drop down.
Then change the base SDK to 3.2. Its about the 3rd option down I think.
Hope that helps.
Related
I'm unable to choose the lower than 4 version of SDK simulator in the simulator selection list in xcode4. There are iOS SDK 4+ (for iPhone) and iOS SDK 3.2 (for iPad) simulator versions only. I have set IPHONEOS_DEPLOYMENT_TARGET = 3.1 but nothing changes.
In the project editor choose your build target and then choose the summary pane. In the summary pane there is a drop down box where you can choose the deployment target. This may or may not help because it sounds like you're already changing the variable directly in the build settings.
Seems like we need to download and install previous version of Xcode and SDK. All the versions could be found on Apple's developer site. Also, there is one simple instruction that can be found here:
http://iosdevelopertips.com/xcode/download-and-install-older-versions-of-xcode-xcode-previous-releases.html
I've just updated xcode to release 4.0. A lot of the frameworks in my App are now highlighted in red, they appear to be missing. i.e. MapKit.framework
Is 4.0 not backward compatible with 3.1.3 ?
Regards,
Stephen
If your project is working with 3.1.3 well, then do the following:
1. In XCode left pane, select your project name, right click (control click) and select "Get Info".
2. In Build tab, change the Base SDK to iPhone Device 4.0 (your latest downloaded SDK)
3. Similarly also repeat above steps after selecting "Project" menu -> Edit active target.
Then close your XCode and restart XCode.
All your frameworks will be available now.
However this change (by itself) will prevent your app from loading on a 3.1.x device. That's because the new setting "iOS Deployment Target" (introduced with the 4.x SDK) will default to the same value as the Base SDK you just set. You have to change this new setting (it's in the "Deployment" group) to the earliest iOS device your app will support.
Now your app will run on any device running that version or later of iOS. But there's a new wrinkle. If you add code to your project that uses classes or methods introduced in 4.x, you'll get no warning of that in the Simulator, yet it will crash when called by your 3.x device. You have to wrap such calls with code that tests the runtime version of the device, and only make the calls if the runtime version supports those calls.
This is all discussed in detail here: Install xCode 3.2.3 w/ iPhone SDK 4, get "Base SDK missing", can't see other SDKs, which includes links to discussions of how best to code these runtime checks.
I just downloaded XCode 3.2.3 with iphone sdk 4, but I need to compile my app with 3.1.3, but there is no option in the project settings for that (just 4.0 or 3.2). Is there any other possibility for me besides downgrading to XCode 3.2.2??
In the Deployment section of the Build settings, there is an option to set iPhone OS Deployment Target. You can choose 3.1.3 from the list of available OS versions.
Yes, you may choose any iPhone OS
Deployment target from the list. But
make sure that you are not using any
iPhone SDK 4.0 specific
methods/properties.
That is the catch, isn't it... is there an easy way to check that we're not doing any iOS4 SDK calls if we cant trap it during a compile?
I found this (see the bottom of the page):
http://0xced.blogspot.com/2010/07/using-sdk-313-with-iphone-sdk-4.html
Unfortunately, it requires the following on the first step:
"Locate iPhoneOS3.1.3.sdk and iPhoneSimulator3.1.3.sdk from an iPhone SDK 3 installation"
And, of course I blew away my iPhone SDK 3 installation when I installed the iOS 4 SDK. So I'm kinda stuck.
Is there another alternative?
Thanks!
Yes, you may choose any iPhone OS Deployment target from the list. But make sure that you are not using any iPhone SDK 4.0 specific methods/properties.
I strongly recommend you read this. SDKs other than 3.2 and 4.0 are no longer available for App Store submission.
I keep getting this error.
There is no SDK with the name or path 'iphoneos2.0'
I am running some templates at
http://appsamuck.com/day1.html
I'm running the latest sdk, in the pop up menu (simulator) there is an option iPhone Device 2.0 (missing) (Base SDK)
Then just select another SDK: 3, 3.2 or 4.
Most examples will work, even if they were prepared for SDK 2.
Oh, i have just met this problem last night :) I think your project write in xCode 3.2.2 or earlier but you try to run it on xCode 3.2.3. And you need to tell xCode to run your app in iPhone Simulator with iOS 4 (iPhone running iOS 4 can run iPhone's app write for iOS 3). If that's your problem do some step to slove it:
Select "Project" menu on xCode.
Select "Edit Project Settings" submenu.
Look at line "Base SDK for All Configurations", select iPhone Simulator 4.0 (May be it look like disable but you can select).
Run your project to compile your project.
Good luck :)
Looking at the code here, it's one of the very first iPhone dev tutorials written, and it's evidently not been updated to reflect the current SDK and Xcode versions.
I would suggest starting with a more modern tutorial, then coming back to this once you have the confidence to be able to understand and fix the code.
Go to the project
project> Edit project Setting
Change BASE SDK to the latest IOS
after that
Code Signing Identity: Change it to DON'T CODE SIGN
after doing this some of my applications was working fine but not all of them.
The current 3.2 SDK doesn't seem to contain 3.1.3 - how do I get it to work?
Download the 3.1.3 SDK and install it in another location if you want to keep the 3.2.2 beta, ie /Developer313
See image below for where to click to enter new install place.
alt text http://img.skitch.com/20100203-ny1ahei187k36t1aihf8k97crs.jpg
No, you need to download the new 3.1.3 SDK. In addition, Apple recommends against submitting apps to the App Store that were built using 3.2, even if they're targeting 3.x.