Running PowerApps on older mobile devices

The minimum supported operating systems for PowerApps is Android 5, iOS 8, and Windows 8. Often, there's a need to run PowerApps on older devices, especially for corporate users with slower hardware upgrade cycles. 

For users with non supported operating systems, the way to work around this problem is to use the web based version of the PowerApps player. The following post covers the common questions -

  • What web browsers does PowerApps support?
  • How can I run PowerApps on older Android devices
  • How can I run PowerApps on Windows 7, Vista, XP

What web browsers does PowerApps support?

Chrome is the most widely supported browser, and PowerApps supports this on Windows 7 and above, macOS, iOS8, and Android. Other supported browsers include Edge, Firefox, IE and Safari. Here's a list of supported browsers and versions :

https://docs.microsoft.com/en-us/powerapps/run-app-browser

image

Fig 1 – List of supported browsers

Although these are the browsers that Microsoft officially supports, it’s still possible to run PowerApps with varying levels of success on other browsers and operating systems.

Running PowerApps on older versions of Android

Let’s look at how PowerApps runs on Android. One motivation behind this post is to answer the frequent question - can I run PowerApps on Android 4.x?

To provide some background, it’s useful to understand the versions of Android are currently in use.  As of December 2017, this link suggests that just under 20% of users use versions 4.1 to 4.4 of Android.

https://fossbytes.com/most-popular-android-versions-always-updated/

image

Fig 2 – Android usage statistics

Although the minimum supported version of Android covers almost 80% of all users, there is still a significant number of users that use version 4.

Can I hack the Android App to work on Android 4?

We can't install PowerApps on a version 4 device because it doesn't show in the Play Store listings for the device.

But what if we take the APK and attempt to side load it onto the device? When I tried to do this, the device returned the error ‘there was a problem parsing the package’  - an error that usually indicates platform incompatibility. Therefore, PowerApps will not install on versions of Android prior to 5.

image

Fig 3 – Attempting to side load PowerApps on Android 4

How well does the browser version of PowerApps run on Android 4?

To test how well PowerApps runs in a browser on Android 4, I ran PowerApps on an old Android 4.4 tablet. Unfortunately, it wasn’t possible to perform anything useful. The browser frequently hung while performing tasks in PowerApps - most likely due the age and slowness of the device. I suspect many devices of this vintage will behave in the same way.

To investigate this further, I ran PowerApps though the Android SDK emulator and I set the RAM to the practical working limit of 768MB. Like the physical device, the browser would often hang, or return blank pages.

To try and emulate a more powerful device, I ran PowerApps through the Visual Studio emulator. I used the 1GB 5” 4.4 image and I had more success. Of all the browsers, Firefox (version 57) worked most reliably for me. The latest version of Chrome isn’t available for Android 4 and the last supported version exhibited strange behaviours. For example when carrying out certain tasks, the browser would sometimes end up in a page refresh loop whilst loading PowerApps.

image

Fig 4 – Stock Android 4 browser – the browser shows a blank page and fails to load

image

Fig 5 – Chrome 42 on the same device – PowerApps loads, but some parts of the UI are missing

Does the browser version of PowerApps support all of the features?

The answer is mostly yes, but it depends on the browser. With Firefox 57, I was able to run apps that use the camera control, and apps that use GPS/location services to retrieve the user location

image

Fig 6 – Firefox 54 on Android 4 – the camera control works

image

Fig 7 – Firefox 54 on Android 4 – location services works

How exactly do these rich features work in a browser? The browser provides these media capture and geo location capabilities through built in features, HTML5, and associated JavaScript methods.

Features that don't work so well include the chart controls. Offline working capabilities are also limited because PowerApps doesn’t support the LoadData and SaveData functions through the browser. The data import and export controls also don’t work in a browser.

What about Windows 7, Vista, XP?

PowerApps works on Windows 7 by using up to date versions of IE, Chrome, or Firefox. To test an even earlier operating system, I ran PowerApps in Windows XP. Like my test with Android 4, Firefox was the browser that worked best. I was able to run the sample apps smoothly and without any error.

With IE8, I wasn’t able to reach the login page for PowerApps. I received the error ‘Internet Explorer cannot display the webpage’. I could load other web pages with IE and I was able to reach the login page from other browsers so I don’t think that the error was due to DNS misconfiguration or bad internet connectivity.

With Chrome, I noticed that parts of the UI would sometimes be missing. In the screenshot below, notice how the screens are missing from the left hand side of the designer.

image

Figure 8 - Chrome version 49.0.2623 on Windows XP – Notice how the screen section on the left is missing

Conclusions

PowerApps can run on older devices through a web browser. For Android devices, I recommend a minimum of 1GB of RAM and the browser that seems to work best is Firefox.  Note that not all features are guaranteed to work through the browser. There is limited support for chart controls, and offline working capabilities are also limited (PowerApps doesn’t support the LoadData and SaveData functions through the browser). The data import and export controls also don’t work in a browser.