iOS7 apps supporting older versions? - ios

Of all the iOS7 apps I have seen, none of them support the earlier versions (6.1 or earlier)
I wanted to know if my apps supports both, iOS6 and iOS7, will my app be rejected?

No. You can support iOS 6 and 7. Just target the latest SDK and set your deployment target to iOS6. If you use APIs that are only available in iOS 7 then you need to check to make sure they exist (respondsToSelector:) prior to calling them or your app will crash on iOS 6, though.

1) No your app is not going to be rejected.
2) You can upload your app with iOS 6 support only.
3) You can upload your app with both (iOS6/iOS7) Supported With setting deployment target 6.1 or whatever you want.
4) If you want to upload app with both iOS 6 and 7 , you have to make some changes in UI because in iOS 7 some UI is going to changed like,Switch,Tabbar,statusbar. So make changes in it.
5) For more information regarding iOS 7 UI https://developer.apple.com/library/ios/design/index.html#//apple_ref/doc/uid/TP40013289
6) For more information regarding integrate iOS 6/7
https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/TransitionGuide/SupportingEarlieriOS.html

Related

Can I still develop apps for iOS6 in 2017?

I'm using XCode 8.2.1 and see that the earliest SDK it allows me to use is iOS8. I have a couple ideas for apps that use dedicated older devices (iPod 4/iPhone 4), and would like to use iOS6.
Is developing for iOS6 still possible in 2017?
Would apple accept apps developed for iOS6 to the App Store?
Can I download iOS 6 SDK within XCode8 or do
I need to download earlier version of XCode?
sorry, but iOS 6 is deprecated
you can develop iOS 6 application in Xcode 5 or 6, but you can't publish your application

Xcode 8 no support iOS 7

I've upgraded my Xcode to Xcode 8. Now I notice that I cannot run/debug on an iPhone with iOS 7.n.n. I've have read that it isn't supported in Xcode 8. I do know that my app will still work on iOS 7, but if something fails I would like to hang it on Xcode to debug it. So my question is:
Do I still get the bug fixes/improvement that were introduced in iOS 10 when submitting my app with a base sdk setting of iOS 9.3?
Xcode 8 (or even Xcode 7) doesn't include support for iOS 7 simulator, which is what I think you're really asking about.
To pick up the new iOS 10 SDK changes, link against the iOS 10 SDK and then set your target's minimum deployment version to iOS 7.
If you were using analytics, chances are very high that you'll find the number of iOS 7 using customers is incredibly low.
Do I still get the bug fixes/improvement that were introduced in iOS 10 when submitting my app with a base sdk setting of iOS 9.3?
No, of course not. If you do that, you are still an iOS 9 app. You must link against iOS 10 if you want to run natively under iOS 10.
However, you can do that and still be backward compatible to iOS 7. And you can easily test on an iOS 7 device, so the change to Xcode 8 does you no harm.

Can I release an update for iOS versions not supported before?

I have an app which was initially made for iOS 7 and 8 support.
After a while the difference between the way iOS 8 and iOS 7 was supporting layouts especially in working with container views, made me continue the support only for iOS 8.
Now I have some time and I'm thinking about remaking the app partially in a way that will work good on iOS 7 too.
The question: After my app became iOS 8 only on App Store, can it become iOS 7 and iOS 8 supportive again?
Yes you can. Just set the iOS deployment target as 7.0 for both Project and Targets of your xcodeproj project.

Using ios 6.1 sdk with ios8

I have installed the ios 6.1 sdk in xcode 6 and it shows up in my base sdk drop-down.
I selected it and the app builds but when it launches on the ipad (ios 8) it seems to have a very broken apperence as if its trying to use ios 8 sdk. In ios 7 we were able to use the ios 6.1 sdk on ios 7, is this ability totally removed in ios 8?
This is an enterprise applicaiton, and the client is trying to avoid paying from a full refresh to ios 8.
Dropping an old SDK into a newer copy of Xcode is untested and unsupported by Apple, and it's no wonder you're seeing the problems you're seeing.
If you want to support an earlier version of iOS while using the latest SDK, just set the Minimum Deployment iOS version in your target's build settings (as described here in the Apple documentation I've included).
p.s. On the other hand, if you really want to keep using the iOS 6.1 SDK... use the Xcode version the SDK came with. And it should hopefully look proper under iOS 6, and it'll look like an iOS 6 app under iOS 7 & iOS 8.
p.p.s. Your client is cheap.

Use pre-iOS 7 look and feel on iOS 7

How is it possible to use your pre-iOS 7 look and feel for your app? I just upgraded to iOS 7 and I have some apps on the phone that are still using the pre-iOS 7 look and feel. For instance one app is using the old UIPickerView look but it's running on iOS 7.
When I tested running the app that I am developing on the iOS 7 simulator it's using the new UIPickerView "automatically" without me doing any changes.
So I'd rather that my app uses the pre-iOS 7 look and feel until I have upgraded my app for iOS 7.
Here's an image of running Checkmark on iOS 7, you can clearly see it's using the pre iOS 7 keyboard:
That's rather simple: You have to build your app using the iOS6 SDK. iOS 7 detects older apps by checking the SDK against which the app was linked.
You can switch "Base SDKs" in Xcode by selecting the target, switch to the build settings tab, and find the "Base SDK" build setting under "Architecture".
If you don't have an older SDK you may need to use an older version of Xcode (4.6). Rob Napier describes here how to point a newer Xcode to older SDKs.
Note that while many UI elements retain their iOS 6 look, some don't (UIAlertView, UIActionSheet).
If you're using the standard UI components you're going to automatically get the new style on iOS 7, there's no way I've come across to force them to appear as they would in iOS 6. The only way you're going to be able to have them appear as iOS 6 elements is to build custom elements and style them yourself, however there's a risk in doing that that when you submit to Apple they'll reject on the basis of breaking the HIG.
On a device running iOS 7, all of the system UI—such as alerts and notifications—uses the iOS 7 appearance, even if your app is currently using an earlier appearance.
From Apple transition guide:
https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/TransitionGuide/SupportingEarlieriOS.html#//apple_ref/doc/uid/TP40013174-CH14-SW1
Not only do you need to build your app using iOS 6 SDK or earlier, you need to use Xcode 4.6 or earlier. I just went through all of this and targeting iOS 6 SDK from Xcode 5 is just not enough.
Luckily you can dual install both versions of Xcode. Just download Xcode 4.6 and drop it in your Applications Folder and rename is to something else

Resources