![]() The Answer I linked to above talks about 25% of Twitter users being ignored because of platform changes due to an upgraded app. And if you're going to completely rewrite an app, it makes more sense to do it in the latest SDK, rather than one that'll be completely out dated again in 1-2 years.Įven just rewriting an app to clean it up, remove unnecessary functionality, redo the user interface/user experience (UI/UX), or 100 other reasons, using the most recent SDK also makes the most sense. If you have an app written in an old SDK that works with old phones, but you need/decide to upgrade those protocols to a security version the old version just doesn't support, you may have to remove some backwards compatibility to get access to the newer standards in a newer SDK. ![]() Other reasonsĪ company may also decide that their method of communication (protocols) need to be updated to newer specifications that aren't available in old versions of the SDK. Mobile stores like Google and Apple don't have an easy way for a user to get older versions, even though the developer can still see those old versions. The old version is still available somewhere when a new version is released. In fact, most non-mobile software development is done like this. Some companies may rewrite their software completely (for various reasons including getting rid of large amounts of unnecessary legacy code), then post it as a separate app, leaving the previous version available as their idea of backwards compatibility. And sometimes it's removed because of good reasons, usually meaning that it has significant security issues.Īnd just because the app is dropped, it doesn't mean that there isn't a newer version available. Some of these differences are even deprecated (disapproved of) or completely removed from the newer SDKs, which makes it difficult or impossible to maintain backwards compatibility. Speaking as a developer, it can be difficult to remember what settings or commands mean to different versions of an OS. The Android SDK (software development kit) sets a minimum version of Android that it supports, as explained by another Q and A:ĭevelopers/companies (referred to as just "developer" from now on) can choose to support older version, but it gets hard to maintain that code. ![]() And of course it removes the necessity to test the app on such old devices which can be a problem if you want to test your app on physical devices (not emulators) as old devices break and are more and more difficult to get. Decreasing the number of supported Android versions simplifies the app as old workarounds can be removed and don't have to be maintained anymore. Therefore if you want to make use of them and the functionality is not optional in your app, app developers may decide to drop support of older Android versions in favor if being able to use new features of new Android versions. The main problem is that newer Android versions include interesting new features that are not (fully) available using the compatibility system Google provides. Therefore the common way is option 1 – one app that has all compatibility fixes included. This way is often not used or only if the app has been completely rewritten for new devices and for old devices the old version remains with minimal to no support. The second option is of course very costly as you have to develop maintain each app app version independently (or at least large parts of the app). There are two ways to support old Android versions:īuild one app that makes use of compatibility patches to supports old Android versions (down to a specific version) but also support all modern Android versions.īuild two or more apps each for a set of Android versions.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |