iPadOS on Safari

iPadOS 13 Safari not detected as (is)Tablet or (is)iPad

In September 2019, Apple has released a new, separate version of iOS specifically for the iPad: iPadOS. With iPadOS there comes a change in how Safari manages webpages and identifies them, which has an impact on app distribution and installations with Updraft.

‌Newly with iPadOS, Apple is forcing the "Desktop mode" as the default mode. This means that if you are using the Safari browser on your iPad with iPadOS, Safari always identify itself just like Safari on macOS does.

‌For a long time, the Safari browser on iPad was basically the same as on an iPhone and sent a mobile-user agent to the server, so the mobile device could be identified and the content of the website returned accordingly.

Mobile User Agent Example:

Mozilla/5.0 (iPad; CPU iPhone OS 13_0_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0 Safari/605.1.15

A few years ago, Apple introduced desktop mode. This had no serious impact on the display of a website on the user's end device. The desktop mode was intended to help to improve the display of older web pages and to minimize specific browser recognition.

However, now Apple is forcing desktop mode by default which is a breaking change in certain situations. This is a major headache for many developers because it is suddenly nearly impossible to tell reliably whether the end user is calling your website with a desktop device or an iPad.

Desktop User Agent Example:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36

Why Updraft needs device detection

In absolutely most cases, detecting a specific device or browser is a bad idea. Mozilla has a pretty clear statement about this topic:

«The different display of a web page on different browsers is a rather bad idea. The Web is meant to be accessible to everyone, regardless of which browser or device they're using. There are ways to develop your website to progressively enhance itself based on the availability of features rather than by targeting specific browsers» (https://developer.mozilla.org/en-US/docs/Web/HTTP/Browser_detection_using_the_user_agent).

There are however legitimate reasons to detect the platform or operating system on which a browser is running: Updraft uses the user-agent on the app installation page to show to the tester an installation button on an iOS (or iPadOS for that matter) device and informs users who are opening an app-installation-link on Updraft on the desktop to open the installation url on his or her mobile device and provides a QR-code to do so easily. This feature is of course only possible if the platform on which an Updraft installation page is shown can be detected reliably.

Therefore, if you are trying to install and distribute Updraft releases on the newest iPad generation (5th generation with iPadOS) you need to do following workflow:

  1. Open the Updraft installation link on your iPad

  2. Switch to mobile mode from the "AA" button in the browser input field

  3. Download your app

Hopefully this workaround is helpful to you. Unfortunately, this is the only solution we can offer short-term. We are however working on better user guidance and hope to be able to provide a more seamless experience in the future again.‌If you want to know more about your user-agent just visit: http://www.useragentstring.com/.

Last updated

#288: Added App Store Connect API Docs

Change request updated