Apple recently released Xcode 9, which ships with a Swift 3.2/4 compiler. Swift 3.2 includes numerous features (such as support for where constraints on associated types), while still being a member of the Swift 3 family. So, my question is:
Is Swift 3.2 production ready? Can I write and deploy apps to the App Store using Xcode 9 beta?
You currently cannot deploy to the App Store, it will take some time and upcoming Xcode betas until that's possible. In the last years we didn't need the GM to upload to the App Store, but the first Xcode Betas didn't let you do that.
Related
i'm getting the Warning when i upload my application through xcode 8.x.
Xcode for future app deliveries." WARNING ITMS-90725: "SDK Version
Issue. In July 2018, iOS app updates submitted to the App Store will
need to be built with the iOS '11.0' SDK or later, included in Xcode
[9.0] or later. Make sure to update Xcode for future app deliveries."
My project was developed in old swift 2.X language and some of the module in objective-c..
should i convert whole project to the latest swift 4.x and update all sdks?
Starting in July, all app updates and all new apps submitted to the App Store must be created with a Base SDK of iOS 11.0 or later. This requires Xcode 9.0 or later. This means your app must be in Swift 4 or later. You may still support earlier versions of iOS (either 8 or 9) in your app.
Swift 2 has been obsolete for a few years already.
So yes, you need to convert to Swift 4 and update any libraries you may be using accordingly. Use Xcode 8 to first convert your Swift 2 code to Swift 3 (huge change). Then use Xcode 9 to convert the Swift 3 code to Swift 4 (minor changes).
Apple wants you using the latest tools. You need to keep up. It's best to avoid waiting until cutoffs like this, it just makes updating your app that much harder.
Yes you update your code to swift 4.
First, they said April, and how that deadline absolutely positively included updates. Then the general lever wasn't actually pulled until right after May 1. Now they say July for updates...
Seems to be a moving target. That, and how the left hand is out walking the dog while the right hand is texting about the new red phone.
I am new to Xcode and iOS coding. I updated my app to iOS 9, and I would like to submit it to the app store. Is this possible? Or will they not accept an iOS 9 build?
It works fine on both iOS 9 and iOS 8 devices.
PetahChristian is right. Apple does not allow you to submit beta build with beta version of Xcode, which is indeed suboptimal thing, as you won't be able to test your app until final version of Xcode comes out (this is all just in case you switched to Swift 2.0, otherwise just use Xcode 6.4 to submit the build).
Let's just hope that our users will be willing to accept possibly buggy apps when iOS 9 kicks in, as developers simply can't test them properly :).
You can't submit an app using a beta version of Xcode.
As long as you did not update your project to Swift 2.0, you should be able to submit it using the released version of Xcode.
If you upgraded your project and it won't compile with Swift 1.2, you'll have to wait until Xcode 7 is released.
Update:
The beta has several purposes:
To test Apple's code and report bugs to Apple.
To gain early access to new features and functionality of the SDK. You beta test your new or upgraded app on iOS 9 and fix bugs. When Xcode is released, you test against the release, then submit it.
To test existing apps to make sure they still work properly on (a prerelease of) iOS 9. You fix any bugs that may have turned up, but keep your code compatible with Swift 1.2 and Xcode 6. You submit using Xcode 6, and are able to submit any bug fixes in advance of Xcode 7 being released.
Ideally, you get to do all three things, but updating your app generally involves maintaining and working on different branches of your project.
This allows you to both support and fix issues for your released version, and add new features to an upcoming version.
Apple introduced a new programming language for iOS 8 / OS X. Which version of xcode supports Swift?
I am trying on Xcode 5.1, but it is not supported.
Swift programming language was introduced in Xcode 6 beta version.
Xcode 6 has deep support for Swift throughout. It’s easy to create a brand new app using 100% Swift code, add new Swift code or frameworks to existing apps, and view documentation in either Swift, Objective-C, or both. All the popular affordances such as “Jump to Definition” or “Open Quickly” work equally well with Swift, and even Objective-C header definitions can be shown in Swift syntax.
Please refer the following links for more detail:
https://itunes.apple.com/us/book/swift-programming-language/id881256329?mt=11
https://developer.apple.com/xcode/
It’s Xcode 6+. And you have to save the Swift code in a .swift file, not .m.
You need xcode 6.1 Minimum for osx apps. If you try to use the orginial version of xcode 6, you will only be able to use the playground and create osx apps.
If I only have xcode 3 what am I missing? Should I hold off my project until I get xcode 4?
This would be for ios programming.
Thanks.
You'll be missing the ability to ship software in the App Store. Building for iOS 5 (which is required for App Store acceptance) requires Xcode 4.2. That's probably the single biggest thing. If you're just looking to try things out a bit, Xcode 3 will work. But if you're planning on shipping iOS software, you'll need to have Xcode 4.
Other than that, it's mostly just feature updates. Xcode 4 has a number of features intended to speed up development. By sticking with Xcode 3, you'll be missing out on:
Automatic Reference Counting
Storyboards
The ability to drag directly from Interface Builder to your code
A much faster compiler
Various bug fixes
The ability to follow along with any of the recent tutorials referencing Xcode 4.
By sticking with Xcode 3, you get this:
The ability to follow along with some of the older tutorials referencing Xcode 3.
The ability to whine about "the good ol' days" when you finally switch to Xcode 4.
I am just starting iOS/iPhone development and I would like to start using XCode 4 instead of XCode 3.2. Is XCode 4 stable/feature complete enough for beginning iPhone development or should I stick with XCode 3.2?
I have run into far too many problems using beta versions of XCode, especially since you can't really have two versions of XCode one the same system. Apple already has a history of releasing things to developers before they are truly ready (just look at iAds for the iPad which were released months ago and have yet to deliver a single ad). So, if even Apple isn't ready to label XCode 4 as ready-to-go then you can rest assured its not really ready to go.
I recommend sticking with 3.2. That's what I'm doing until XCode 4 is officially supported.
Using XCode 4 calls everything you do into question. Having a problem with an API? Maybe it's XCode, maybe its your code, maybe its a bug in the API. You just don't know.
I would say no, it's not ready. I tried using it as my main development environment for about a week, and eventually switched back to 3.2. For one thing it crashed fairly regularly, but I could get passed that.
The big thing that caused me to switch back was a bug where the iOS simulator would think that certain resources existed in my app that didn't. Deleting the app from the simulator didn't work, cleaning the project didn't work, and deleting the derived data folder didn't work. Since it's not officially released, finding help for problems like this is a pain as well.
This is just one instance of the kind of problems you'll run into while using it, so I'd recommend avoiding it for now.
You can use Xcode 4 if you do not plan on using the current version (Preview 6) for submitting apps to the App Store.
iOS Dev Center:
Xcode 4 Developer Preview 6 includes
iOS SDK 4.2, bug fixes, and additional
features. To compile submissions for
the App Store, continue to use Xcode
3.2.5 and iOS SDK 4.2.