mobile development: finding the right solution

Sean Sparkman (@seansparkman) & Paul Zolnierczyk (@paulish29)
april 28th, 2020

Many mobile phones

With an estimated 3.2 billion smartphone users in 2019, the mobile app industry is growing and not showing any signs of slowing down. Along with this growth in smartphone usage comes increased demands and expectations from end users. Apps need to use the latest smartphone features, be fast & easy to use. This is further complicated with the need to develop for both Android and Apple smartphones as well as tablets. For someone with an app idea, considering all these factors can be a bit overwhelming. This is where Infinity Interactive steps in. Infinity has extensive experience in the mobile app arena and can help you identify the best approach for your app and target audience. Today, companies are not just restricted to developing a native mobile app. They can also build mobile web apps, progressive web apps, and cross-platform apps. This post will cover the pros and cons of each with the hope of giving a clear path for taking an app idea into app reality.

mobile web apps

mobile web app

what is a mobile web app?

A mobile web app can be considered an app accessed via a device’s browser. These web apps are typically developed using technologies such as HTML, CSS and JavaScript. Mobile web apps tend to be the fastest way to build an app that can be used on a mobile device, however they come with drawbacks that may negate the speed of development. Web apps are dependent on an active internet connection to load the content. This causes potential issues when users have slow or spotty connections, and typically if something doesn’t load quickly the web app is first to be blamed. Overall this can lead to a poor experience for the user. Below we list some pros and cons of this approach for consideration on whether this is a good fit.

pros

cons

progressive web apps

mobile web app

what is a progressive web app?

Progressive web apps (PWAs) are web apps that use a specific set of technologies and patterns that allow for usage of both web and native platform features. One item to have in mind for a mobile app is determining what device features are critical to the success of a project. Not all device features are accessible from a PWA, such as NFC, Bluetooth, or FaceID to name a few on Apple devices. When it comes to Android devices, there is more support for PWAs regarding access to device features. Device and browser features can be explored by going to What Web Can Do Today (sic). One item of caution with PWAs — the “What Web Can Do Today” site may not always be accurate. For example, the iPhone 11 Pro Max supports “Audio & Video Capture” if the user uses Safari but not if using Chrome.

pros

cons

native apps

mobile native app

what is a native app?

A native mobile app is an application built for a specific device family and Operating System (OS). These are the apps available to Android and Apple users in their respective app stores. A native application is compiled to the platform specific binary file and runs natively on the device. Building a native app often means using the device family’s programming language to develop an app. You may have heard of the term “Objective-C” or “Swift” when it comes to making an Apple app or perhaps heard of “Java” or “Kotlin” when developing an Android app. There are also other language options available that compile to a native binary, such as C# if using a tool like Xamarin. When the decision is made to build a native app the first challenge tends to be deciding which platform to target. Should it be on Apple or Android or both?

pros

cons

cross-platform apps

mobile web app

what are cross-platform apps?

A cross-platform app is an application written using a cross-platform tool such as React Native or Xamarin.Forms. When written using these technologies, there is only one programming language to worry about and one code base that will create native apps for multiple platforms such as Apple and Android devices. Cross-platform applications have greatly improved in the past few years. Previously, they all looked the same across platforms, did not take advantage of platform specific features, and were very clunky. Now it is almost impossible to tell the difference between a purely native application and a cross-platform application.

pros

cons

what’s next?

This primer covered the different types of approaches to bringing mobile app ideas to app reality. The needs of the app will determine which choice is the best approach. Even if the app is developed with one choice, it’s never too late to migrate to a different approach. The Facebook app was originally a web view that wrapped around a web page which allowed for a native app in the app store. They faced a lot of backlash with this approach since it wasn’t as responsive as a native app and have since then used native only. Navigating these waters can be intimidating and that’s where Infinity can help.

Tags: technology mobile android ios objective-c swift java kotlin csharp xamarin