Monday, March 09, 2015

Microsoft removed 2 reasons for building an app for a website...

... by making it possible to bundle a website as an app.

At MWC last week Microsoft announced that in Windows 10 it will be possible to package websites for distribution via the store. Additionally, when the website is viewed after having been installed from the store it will have access to device APIs (via javascript).

This actually removes two of the reasons that used to exist for creating an app equivalent for a website.

1. Discoverability (via the store)
2. Access to device specific functionality.

In some circumstances there are more but these are the main ones.

1. If you can package a website as an app just to help people discover it in the store then there's no need for a separate app. This is a good thing. If you have a website that works perfectly well on Windows devices you shouldn't have to create an app just so you appear in the store.

2. Access to device specific functionality is normally only available through native APIs. This was a strong reason for needing to build an app previously. Of particular general use was the ability to use push notifications to inform people of new content. As this is (will be) now available to websites installed through the store it is no longer a reason to need an app. Additionally access to contacts and calendars will also be available, further removing necessities to build an app.

Here's the other important point. The packaging for the website is simple. It's a manifest defining the URL and the permissions/capabilities required plus some store specific assets. (images, description, screenshots, etc.)
You won't have to include all the files that make up the website/webapp and ship them to the store. They will stay on your server. This will make updating and modifying the site (app) much simpler than if it had to go through the store.

There are some potential gotchas though too:

  • You won't have access to this extra functionality if the site is not being accessed after having been "installed" from the store. You may have to detect this and advise the user appropriately if they want some functionality that is only available when "installed".
  • By blurring the lines between web site and installed app you may have to make this extra clear to your user what this is and how it works.
  • The browser in Windows (8.1 & presumably 10) has a user agent that many websites can mistake for Android or iOS devices. Be aware of this and consider your device detection carefully. It might look very bad if a website is installed as an "app" only for it to display messages to the user telling them to 'install the Android app' when they try and use it on their Windows 10 device. I see this quite a lot from sites on a Windows Phone 8.1 device and it just reflects badly on the site.
  • You'll still need to make sure that your website works on all devices and only exposes this, new, Windows 10 specific functionality on appropriate devices. Yes it's more work but probably less than maintaining a separate app.

**Disclaimer** all the above is based on comments made by Microsoft at MWC. There was no recording and the information was made publicly only to those people in the room. I was there so you'll just have to trust me. Also, the information released wasn't final so all this may change and the feature/functionality may even get cut.


Post a Comment

I get a lot of comment spam :( - moderation may take a while.