Android or iOS? Or both? It’s a question anyone who’s been involved in building a mobile app will have asked. Android is still the major player in the development world, due to the simple fact of the size of the market, but it’s foolish to write anything that’s grown from Apple off. As with just about every trend in technology, it appears that flexibility and fluidity is the choice route. It’s unsurprising that tools like Xamarin are only going to become more widely used as the future becomes increasingly more mobile.
Mobile developer, Keith Elliott, recently shared his views on mobile development in 2017 with Packt, the learning resources provider for tech pros. Here he highlights the 5 things he thinks developers will need to consider to stay relevant in 2017 and beyond.
User attention span is decreasing
User attention span for app interactions is continuing to decrease. In order to address this, mobile developers need to be spending more time developing apps that have laser focus on handling a few things well over attempting to be all things to all users.
In addition to this, many development companies are trying to give their users access to key content in other channels, such as app extensions on iOS or widgets on Android with the goal of making key information available to users without them having to launch the main apps.
Understanding your platform’s view lifecycles is key
New developers need to take the time to understand the view lifecycles on the platform for which they are developing. You need to understand how you can push pixels to the screen, when they will show and when they will disappear. The view lifecycle on iOS and Android each give the developer functional hooks that can be used to set up their UIs and pre-fetch required assets or perform expensive operations at times that minimize the effects on their users.
Likewise, knowing when things are leaving the screen gives the developer an opportunity to clean up assets that are no longer needed. Lifecycle operations are important and need to be learned and mastered early on.
The iOS and Android battle will continue
I currently feel the development experience on iOS is superior because Apple only has to worry about creating APIs that affect their own hardware. Android development suffers from “device fragmentation overload” due to tons of hardware manufacturers creating devices that need to be considered to ensure their apps will perform as expected. Supporting all of the device combinations can make development for Android painful, which makes the framework less appealing to developers on the fence in terms of choosing a platform to learn.
When Android fixes the OS update problem, I would think the conflict would swing heavily in favor of Android. Mainly, you would have a massive device base that only gets bigger and potentially better written apps that could win over more users.
But Google may become a major player too
My hunch is that Google will create a better way to propagate operating system updates so that users can have an OS upgrade experience that mirrors that on iOS. Newer APIs allow for better app development and newer features; all things developers want to provide to their users and that you typically get from using the latest SDKs as they come out.
Get learning Swift 3 if you haven’t already
During the What's New In Swift lecture from Apple's World Wide Developer Conference (WWDC) 2016, Apple engineers outlined several goals for the upcoming release of Swift 3:
- Develop an open community
- Portability to new platforms
- Get the fundamentals right
- Optimize for awesomeness
Image Credit: Everything Possible / Shutterstock