I am making a application supporting gujrati and english languages.
In ios 9 there is a support for Gujrati language on the keyboard,but same is not the case with iOS 8.
Can anyone please suggest how can i make keyboard in iOS 8 show support for gujrati language
Related
What are the design rules I should take into account when designing an iOS app using xCode 9 , that will be compatible with iOS 11 and iPhone X? I know that I should consider the safe area while designing , is there is anything else ?
The app I developed (with Swift 3 and xcode 8) is ready for iOS 10, but my boss wants it to work with iOS 8 because he has an iPhone with 8.2: when I plugged his iPhone to my Mac and started to build the project, it failed because some features are available only on iOS 9.0 or higher.
I did some research and came across some options, but since I'm a beginner I don't know what would be better. Let me share them with you:
rewrite the whole app with Objective-C: I think the less convenient, since I never studied this language and my boss wants the app to be uploaded to the store as soon as possible;
call Obj-C code from Swift for iOS 8 needs;
upload the app anyway: I managed to modify the app and make it compatible with iOS 9, do you know any recommendation or proposal from Apple to not develop app for too much old iOS versions so that I can convince my boss to not obsess over this matter? 87% of devices are using iOS 10 so we would not cut off too many people;
upload the app AND add iOS 8.0 compatibility in a future update: can I change iOS target in next updates?
use Appcelerator or React Native.
The best solution would be to check the iOS version programatically and only call the problematic methods if the user's phone actually supports them. Otherwise keep that functionality hidden from the user.
This is how you can check iOS version from code:
if #available(iOS 9, *) {
// iOS 9 Swift code
} else {
//Hide the methods from the users on older OS versions
}
That wouldn't work, since most system APIs are not language dependent. If a certain API/feature was only added in a certain iOS version, that requirement stays the same regardless of whether you use Objective-C or Swift.
Same as 1.
This is a feasible option of course.
AFAIK, you can change the target iOS version in a later update.
If you want to achieve a functionality that uses an API which was only introduced in iOS9, even hybrid frameworks need that iOS version if they use built-in iOS APIs.
To add iOS 8 compatibility you must change the deployment target version to 8.0 and resolve every warning/issue that Xcode give you when you try to build/run.
You will need to use if #available(iOS 9, *) {} code if you use APIs that changed between the versions 8 and 10.
You don’t need to rewrite anything in objective c. For the features that are getting called out, research the iOS 8 compatible way to implement them (if even possible) and add checks in your code for iOS version so that certain blocks only execute for certain os’s. (See technical answers already provided)
But, first show your boss how to update his phone.
Then show your boss that 97% of users are using 9 or 10.
https://developer.apple.com/support/app-store/
Next remind him that the 3% of out of date users are also the 3% least likely to be downloading apps and only part of that 3% are on iOS 8. Many are even more out of date.
Then calculate the number of hours required to support iOS 8. Multiply that by your hourly rate. Then ask your boss if it’s worth $X to expand your app’s user base by, at best,1%.
If he says yes, then go for it.
This question already has answers here:
Swift with iOS 5 deployment target [duplicate]
(2 answers)
Closed 7 years ago.
I haven't studied Objective-C yet, except some basics. I like backward compatibility, so I would like my iOS app work for example with iPod Touch 3rd Gen. (iOS 5) and the new iPhone 6 (iOS 8) also. In that case do I need to use Swift yet?
Edit: My idea at the moment is to make cheap apps for iOS, Android and Windows Phone for developing countries and others as well. That is why I'm interested in backward compatibility (not Swift development), because there are people who buy used devices and still might be able to buy apps to those devices. When I asked this question I was uncertain how far back I can go with iOS versions.
Swift's min deployment target is iOS 7. So, no, if you want to support iOS 5 (which would be completely nuts IMHO), you'll need to use objective C.
Also, it doesn't look like Apple will remove support for objective C in any near future, so there is no need to switch to Swift anyway, you are still free to decide which language you prefer.
I have requirements for the iOS app.
Devices that must be supported and iOS versions are listed by the customer.
It is written that the app must support:
- devices: from iPhone 4 and above;
- iOS versions: 7, 8.
I feel myself misled.
As far as I know iPhone 4 is not in the iOS 8 supported devices list.
That's why I have to target to the iOS 7.1.2 - the one that currently supported on all required devices.
How can use benefits of the iOS 8 in this app?
Could you help me with good references that will help me to understand the intricacies of this question?
In short:
Yes, you can but not on the device running with the older version of a system (so you will need conditions for such cases).
Detailed explanation:
If your app has to be compatible with iOS 7 then you can not use iOS 8 features on the system which is older. This is quite obvious, system can not understand commands that haven't been implemented yet. Although you can use in your app API that was revealed in iOS 8 but you have to create, at least, conditions checking agains which system version you run if you want to avoid troubles like app crashes. Quite a good reading for better understanding an issue can be this article. Here you have quite a nice graphic presenting which device supports which version of a system (according to your question about iPhone 4).
I am running iPad simulator version 4.0 - and it appears as though it has no Korean language support.
Does anyone know why, or if there is a way to enable this?
I had Korean support in my iPhone app, and the simulator for that had the proper language support.
The iPad device also has no support for the Korean language. Just wait a few days and iOS 4.2 will be there, probably with Korean.