How Screen Size, Resolution and PPI Affect Test Coverage
As technology continues to evolve, new device models are being released and screens grow bigger, it is more important than ever to understand key device characteristics from a development and testing standpoint.
Whether you are developing native apps, hybrid apps, or responsive web apps (RWD), screen size, screen resolution, and PPI (pixel per inch – pixel density) need to be taken into consideration.
Introduction to screen size, resolution, and PPI
Before we dive into the details, it’s important to know that today’s mobile platforms such as Android have the ability to categorize, based on the screen parameters mentioned above, the sizes and densities into one of six families (LDPI, MDPI, HDPI, XHDPI, XXHDPI, XXX-HDPI) and to optimize app visuals for specific devices with these screen sizes.
Android’s density categories
If we look into some of today’s leading smartphones and tablets and their parameters (See image below), we can clearly see how the six families are represented:
As shown here, it is not just important to mix devices and operating systems based on the location of the devices, but it’s also important to understand that two Samsung devices with approximately the same screen sizes but different resolutions might show different visuals to the user, or will consume more CPU and battery to process the various app visuals on these devices.
Source: (Perfecto’s Device Coverage Index, Nov. 2015)
As a starting point, it is easy to determine your device PPI and classify it as one of the density families accordingly.
The way to calculate device PPI is:
(calculate the device screen resolution square root –> for iPhone 6 it would be 750 x 1334)
Based on step 1 we will get: 1,530 as the Dp value.
Step 2: Match the screen size to the above Dp value to get the PPI. Because in this example we’re using an iPhone 6 device which has a 4.7” screen size, it will result in 326 PPI.
Why do PPI and screen sizes matter?
Mobile apps run on different devices equipped with very different hardware (systems on chip). These devices therefore have a varied amount of CPU as well as battery types. It impacts their performance and other quality related factors.
With these factors in mind, it’s important to understand that loading a given app on an LG G4 (5.5”) with 515 PPI would be different from a CPU, battery usage, and performance (response time) perspective than loading an app on an iPhone 6S Plus (also 5.5”), which has a lower 401 PPI (and also uses a different screen technology). It is likely that the refresh rate of the screen, as well as the battery stretch on the LG, will be different than the iPhone’s. GPU and other hardware factors will also contribute to the variance in performance and power consumption.
With such a large, fragmented market, developers and testers ought to be thinking of the end-user experience, which is often impacted by app performance, visuals, usability, and robustness. Knowing the app’s benchmark performance on a variety of devices, which cover most of the above families, is a good step toward having the right test coverage for your mobile or responsive web app.
As a closing note, it’s not just screen size, resolution, and PPI among manufactures that make a difference. Other factors matter such as screen technology, GPU/processors, and other aspects of the platform on which the app is running.
But starting with the various screen values — especially in RWD apps and heavy graphical apps — is a very important first step in assuring good user experience across platforms.
As we look at the recent Android OS release history (See left) and the content of its releases, it’s clear that bug fixes around performance, battery consumption and user interface are key. Google and other platform vendors are investing continuously, along with mobile app developers, with the goal of providing a great digital experience and high end-user satisfaction.