Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I have following question.
Say I want to start to write an app in one month.
What are the advantages and disadvantages if I:
1) Write the app such that only users of iOS7 can use it.
2) Write an app with iOS6/5 in mind. Meaning app is not optimized for iOS7 (e.g., UI etc.) - however due to forward compatibility I assume iOS7 users can still use it.
3) Write an app that is optimized for iOS7 but users of iOS 6 can still use it.
Example advantages and disadvantages.
The disadvantage of supporting only iOS7 maybe that users with other version of iOS can't use it.
Disadvantage of optimizing app for iOS7 while it is usable also for iOS6 may be a lot of work.
In this fashion, I hope that the users here will help me list advantages and disadvantages of the three items I listed initially.
If you're using public, non-deprecated official iOS SDK ( at that time this answer is written, the current stable version is iOS 6.1 ), you can support iOS 5 & 6. The current stable (non-beta) Xcode cannot support iOS 7 development yet.
Also, always support as many non-retiring versions as possible. You have to (compulsory) support iOS 7 in near future, so your choice would only be supporting iOS 5 or not.
Note: Since iOS 5 & iOS 6 are quite similar, supporting iOS 5 won't make you write a lot more codes.
In addition to above :
https://stackoverflow.com/questions/17207126/release-of-ios-7-affecting-development
Application must be compatible with both the latest version and second last version.
So, once iOS 7 is released fully, make your app compatible with iOS 7 also. It will increase your sales.
Your development target has to be iOS 5 when developing the application. There is not much difference in terms of view in iOS 5 and iOS 6, but some features may not be available because of Frameworks advancement. So, take care of that.
Hope this helps !!
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I have released several apps written in Swift 2.0 and 2.1. Now Apple just open source Swift and announced that Swift 3.0 will be released next year. So will my apps still works after Swift 3.0's release?
I think you are asking two separate questions here.
Will your app execute on the new OS when Swift 3 is launched?
Will your app work on the new OS when it is launched?
In regards to the first question, yes your app will execute even though it was compiled against Swift 2. Swift apps have the Swift runtime libraries embedded in their bundles so you are safe in this regard. You will notice that Swift bundles are always about 4-5 MB larger than their Objective-C counterparts and this is precisely why.
In regards to the second question, as with any new OS release there is no guarantee that your apps will work as they did on previous versions of the OS. Although, from my experience Apple has done a pretty decent job of keep things backwards compatible over the last couple of OS releases, though your mileage may vary.
If you're asking if your code written in Swift 2.0 / 2.1 will compile under Swift 3.0, it's possible that it won't. Quoted from Swift Programming Language Evolution:
Full source compatibility: Swift 3.0 will not provide full source compatibility. Rather, it can and will introduce source-breaking changes needed to support the main goals of Swift 3.0.
But like #Randy said, your previously-compiled app will still run.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
As you may know apple released iOS 8 and swift. So for the apps that I will create this summer (before the public release of iOS 8), will they need to be written in objective-c or swift? If I make these apps and they get accepted during the summer using objective-c will I need to upgrade my apps to support iOS 8 in the fall?
And finally once iOS 8 is out, will we be forced to only use swift, or can we still create apps strictly off objective-c?
Objective-C isn't going anywhere (yet). And you don't have to rerelease your apps for every new version of iOS, unless the new version breaks something.
You can't use beta versions of Xcode to submit to the App Store, though, so if you do plan to submit before 8 comes out, make sure your project is compatible with Xcode 5 (which means no Swift).
I don't think there is a firm stand from apple on how long will objective c be supported.
But objective c can be mixed and matched with Swift and most of the UIKit and AppKit is written in Objective c means Objc will be supported in the near future. I can't see apple rewrite the entire appkit and uikit in swift and deprecate Objc in the next 2 years.
Beyond that is anyone's guess and also things might get effy if apple start to introduce new api only for swift.
I think you are fine with Objc for the next a few years, right now i don't think you can release app written with swift in app store (let me know if i'm wrong).
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I Have an old application in 2 different projects , for iPhone & iPad, historic reason.
These application have developed since ios5.
I want to unify these 2 application and i have a dilemma.
To Create a new universal project using ARC & Storyboard & auto-layout OR continue with one of the platforms for example iPad and insert the iPhone logic there.
(Each way will cause a lot of work)
I'm not looking for the quickest way, rather i'm looking for the best way.
I don't know if moving to ARC & Storyboard & auto-layout will worth it (Considering the fact that the code is already written)?
The only benefit i can think about is when apple will release iPhone 6 the adaptation will be simpler (OR NOT...)
Thanks :)
It would be better to update to the universal project with ARC etc. It will be much more future proof. Also updating to use iOS7 will allow you to use the newer framework changes.
There are rumours that the new iPhone will have a bigger display / more display options. So you will want to make the most of the auto-layout functionality
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Giving that there are many new features specially in memory management, I have iOS 4 / 5 books and there are links to tutorials everywhere for them.
What is the minimum that I should read to take advantage of new features and do not have to 'unlearn' stuffs found in newer versions?
EDIT:
There are some good books about iOS 4/5. Should I avoid them?
Start with the newest SDK and developer tools, Xcode 5. Learn about what's possible with iOS 7 and iOS 6. Don't spend too much time on iOS 4 and 5. Focus on learning about frameworks and not on particular OS versions.
You should still learn about old-style memory management, release and retain methods to understand how ARC is dealing with them for you. However, don't spend too much time on reading. Start coding. Nothing will replace a hands on experience and you learn much quicker when you deal with real projects and real problems.
Focus on iOS 7. There is a quite a bit different in iOS 7 from previous versions, spending time on previous versions is only going to confuse you and make it harder to learn.
Focus on a project and get it built, thats the best way to learn.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
say my goal is that both users of iOS5 and iOS6 should be able to use my application.
What shall I do in order to achieve this?
For example, what I know is, I could set Base SDK to 6.1, and Deployment target to 5.0.
Then, in the code I should ensure I don't use iOS6 specific methods (or use code branching with respondsToSelector if I use iOS6 specific methods).
My question is: should I pay attention to anything else, in order to achieve the goal I mentioned above?
Thank you.
You should set the base SDK to 5.x, because that will not allow you to use ios 6 specific features. Though, support for the twitter feature will not work since they differ by operating system. The best option would be to drop the sdk as low as possible and test it, if it does not work, raise it, and then test again, until it works.
Make sure you do not use autolayout, also note that it becomes increasingly difficult to support the two different sized iPhones natively when taking this approach (because of autolayout). Although per Marcus's comment, this is required. Also, you might as well support iOS 5.1 as anyone who has 5.0 can upgrade (and should).
Lastly, definitely test on both iOS versions. There may be some unexpected outcomes, even small ones (like animation effect for modal form sheets with iOS 6 vs iOS 5).