How to know latest ios version available programatically in swift? - ios

Is there any way we can find out the latest ios version available on device programmatically. Like latest ios version now is 12.2

As per Apple API list you can check latest iOS version with below command. You have to run this command in terminal.
curl -L http://phobos.apple.com./version
You will get all information about the all versions.

There is no way to find the latest iOS version released. It is totally impractical approach because how can UIDevice or Any class know which is the latest iOS was released without updating device operating system.
Now go with other possibilities
There are any apple APIs which provide latest release information?
Unfortunately, There are no such APIs which provide information like this.
Alternatives
You can create custom APIs which is providing the latest release information. Once latest iOS will release then update in server back-end. Then you can check which is the latest iOS version.

I haven't found the solution but I got it from this link: solution
Just call the API
curl -L http://phobos.apple.com./version
and search for the key such as "iPhone10, 1" or whatever device you are looking for. You will find the version under key "Product Version"
<key>ProductVersion</key>
<string>12.3.1</string>

Related

titanium iOS application sometimes show alert "App May Slow Down Your iPhone.."

I create some business application on Appcelerator Studio(sdk version:6.1.0.v20161230103702).
It run iOS simulator(iPhone 7(OS 10.2)),
so sometimes popup "App May Slow Down Your iPhone.." alert.
I wanna prevent this alert.
would appreciate any comments or suggestions.
You might want to take a look at this SO Q&A, this other Q&A, and this third one. There could be something there that you could adapt to Appcelerator Studio.
This alert is supposedly shown for apps developed for the 32 bit architecture.
read here
I wonder though how the ti sdk 6.1.0 would get you this issue.
what Xcode are using ?
Update :
Where did you get that sdk version ?
For production, use one of the GA titanium sdk versions, the latest one (as of the moment of writing this) is at 6.0.2.GA
To install Ti SDKs use this command
appc ti install sdk 6.0.2.GA
If you don't have an appcelerator indie account, you can use this node package tisdk to install new titanium sdk GA releases.
You might be using the latest SDK with the compatible XCode, but are you using any external modules which may not be 64-bit comptible. Can you remove any additional modules, and see if you are getting the error or not. If not, then you need to recompile the modules with the latest SDK or atleast a minimum of 3.5.0.GA from which the 64-bit support was provided.

Is it possible to update old xcode code to the latest xcode?

So my developer developed my app in xcode 5 and i have the latest xcode version. When i tested the app on my version, a lot of features stopped working. My developer told me that it could be the different xcode versions between us. I was wondering if it is possible to fix this without changing the SDK or xcode version.
If it comes to me changing the xcode version, will i not be able to add apple's latest features to my app?
Also, when i add an SDK into the SDK folder, do i have to replace it with the current one or do i just leave both in there together?
BTW i don't know anything about programming, so i only speak noobish.
Thanks!
When parts of an application stop working after the version of Xcode is updated, the reason is almost always a change in the SDK since newer versions Xcode contain newer versions of the SDK. Additionally, stuff from older SDKs often gets deprecated and is eventually removed.
However, you should be aware that Xcode 5 is very dated nowadays and should not (and cannot) be used for developing applications for iOS 8. As a rule, when a new version of Xcode comes out, all existing code should be updated to the current version of the SDK and developers should upgrade to the latest version because it prevents issues like the ones you are describing.
You need to upgrade the code as per the latest iOS version. All the deprecated methods need to be replaced with the new ones. Also the codes that once worked with previous versions of iOS may be or may not be working with the latest version of iOS i.e iOS 8. So an upgrade to the code will be required.

How can a customer get access to an older app release?

I've got a report from a customer saying the latest update to our app isn't working on his iPad 1. Since I don't have an iPad 1 to test on I don't have any way of fixing this, but he says the previous version worked fine. He spoke to Apple and they say he needs a "special code" from us to download the older app.
Does anyone know what this special code or voucher is and how I go about sending him one?
I don't think this special code exists. I suppose what he means is allowing downloads of older app versions.
So let's say you wanted to download an app that requires iOS 7, but an older version only required iOS 6, which is what you have. The App Store will let you know that the latest version is not compatible, but will then download the older version that was still compatible with the older iOS. The latest version that is still compatible will be downloaded.
I asked this question on the Apple Developer Forums as well:
https://devforums.apple.com/message/965324#965324
You can't "delete" the current version. You would have to submit a new version and then go into the previous version list and disable the former version.
Okay, but would this enable iOS5 users to downgrade to the previous release that worked for them?
No. The user would have to delete the app from their device then download the latest compatible version to their devices.

iOS how to upgrade the last compatible version

Apple offers the user the option to download an older version of the app that is compatible with the device. if device OS is not compatible with latest version of application. Apple is now displaying a message that allows users to download the "last compatible version" of an app. like below
It is a potential problem for developers if Apple starts re-distributing old versions of apps that their creators thought were safely dead and gone from the App Store. Now that older versions of apps are apparently getting resurrected, so how developer can manager last compatible version of application
(1) How developer can upgrade the last compatible version of application. should he can manage the 2 code base. one is for old OS and second for new OS ? is there any way to submit different binaries to the App Store.
(2) if there is any severe issue with last compatible version of application : how to remove it or upgrade it ?
(3) is there any way to specify that whether old versions of an app are viable.
I think developers should be able to submit different versions for different iterations of iOS so they can ensure the old versions of their app receive what functionality updates they can.
Link
http://arstechnica.com/apple/2013/09/apple-resurrects-old-app-versions-to-run-on-old-ios-hardware/
You can't upgrade the old versions, but you can remove them so that users can only download your latest one, or nothing. See this answer.
you can disable the availability of previous versions in itunes connect under Rights and Pricing. sadly there is no way to update previous versions.

Sanity-check for iOS API versions used within an application

I have an application where I am supporting a deployment target of 4.3 with a base SDK of 6.x.
I find myself having to weak link API methods and provide alternative workarounds for older runtime based on strategies found in the document "Using SDK-Based Development".
The problem I am facing is, occasionally and unintentionally, I would use a method that is available only in a newer SDK without realizing it and did not weak-link the method. This causes a crash for users running the app on an older version of the OS.
While I know the number of users having that old a runtime (iOS 4.3) is diminishing, I would like to know if there is a tool or a way for us to generate a report that would list APIs available in SDKs other than that of the deployment target, so that I may review the code to ensure proper weak-linking is performed, prior to shipping the product.
Off the top of my head, compiling the source to an older version of the SDK should throw errors, but then again, Apple's strategy has always been to ship new XCode without older SDKs.
I am not looking for a perfect solution. Any other workarounds would be helpful too.
If you don't mind paying, Deploymate can scan your project and identify API calls which may fail on older operating system versions. Works with Mac and iOS apps/projects.
Deploymate helps you identify unavailable, deprecated and obsolete API usage in your Xcode projects

Resources