Book Image

Offline First Web Development

By : Daniel Sauble
Book Image

Offline First Web Development

By: Daniel Sauble

Overview of this book

When building mobile apps, it’s easy to forget about the moments when your users lack a good Internet connection. Put your phone in airplane mode, open a few popular apps, and you’ll quickly see how they handle being offline. From Twitter to Pinterest to Apple Maps, some apps might handle being offline better—but very few do it well. A poor offline experience will result in frustrated users who will abandon your app, or worse, turn to your competitor’s apps Expert or novice, this book will teach you everything you need to know about designing and building a rigorous offline app experience. By putting the offline experience first, you’ll have a solid foundation to build upon, avoiding the unnecessary stress and frustration of trying to retrofit offline capabilities into your finished app. This basic principle, designing for the worst-case scenario, could save you countless hours of wasted effort.
Table of Contents (17 chapters)
Offline First Web Development
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Device support


Unfortunately, this is where we run into problems. Support for Internet-free sharing of data is extremely sparse on mobile platforms. Android supports peer-to-peer Wi-Fi, Near Field Communication (NFC), Bluetooth, and USB. However, this is specific to Android. If you want access to these features on iOS or Windows Phone, you're out of luck. Let's start by inspecting the support provided by Android, then evaluate a couple of libraries that can be used to emulate this functionality on other platforms.

Open http://developer.android.com/guide/topics/connectivity/ in your browser and note the support for the following interfaces.

Bluetooth

Bluetooth is a protocol with a typical range of 10 meters. If you're sharing data with someone in the same room, Bluetooth is a good choice. Let's see what the sharing process looks like:

Bluetooth pairing process

There are a few things that we could do to make this process simpler. First, we could turn on discoverability automatically. Second, we...