Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

I'm creating an app whose UI is simply a web browser that loads a URL. Let's not argue about why I'm implementing it this way (I already tried that with the higher-ups). It can still do the background computing tasks which is basically the "meat" of the app (it listens to events in the phone and simply records them), but what about when the user doesn't have an internet connection? I can imagine that the user opens the app and is simply shown the default "Page can't load" message.

Just to be specific, this is going to be in Android.

share|improve this question
1  
You mean to say it's a native app with a UI that looks like a browser?! –  3nafish Apr 2 '13 at 13:19
    
Yes. Browser inside, nothing else. –  Matt Quiros Apr 2 '13 at 13:28

3 Answers 3

up vote 10 down vote accepted

I've done some quick analysis of existing applications to see what they do in such a situation.

  • Facebook - Red message saying 'no internet connection'

  • Vine - Greyscale sad smiley saying 'couldn't load posts'

  • Safari - Greyscale icon saying 'cannot open the page because your iPhone is not connected to the Internet

  • Flipboard - Empty (Grey) containers with 'No Content' written in them

  • Engadget app - shows grey panel with 'Internet is Unavailable' message

  • Alien Blue - Red message overlayed saying 'please check your internet connection'

  • Met Office App - Red ! and message saying 'Failed to update due to a problem with the network connection'

Some info taken from this analysis:

  1. Don't try to load something that you know won't display. That's wasting users time. If the app has no use at all without internet connectivity then tell them so. However tell them as accurately as you can why this is the case. (The Vine and Flipboard examples above aren't really much help. 'No Content' is mostly obvious, but if it were to say 'No Content because there is no internet connectivity' that would be more useful to the user)

  2. Give the user some feedback as to what is wrong and how to rectify this (all the apps tested on iOS popped up an OS message suggesting I check my WifI / Airplane mode).

  3. Use colour (sparingly) as additional feedback - many of these apps used Red as an indicator, and also others used plain grey backgrounds or images to signify the 'inactive' nature, while presenting the feedback information. However don't rely 100% on colour as the only feedback, use colour to enhance the message but don't assume everyone sees colour the same as everyone else.

share|improve this answer

In cases like this: be as specific as you can. If you know (you're app that is) there is no internet connection - tell the user that the phone isn't connected to the internet or that internet connection has been switched off or you're currently in Airplane mode.

The more information you can give to the user - the better. Then you leave it up to the user to correct what is wrong like finding a spot where internet is available, switching 3G back on or turning off Airplane mode to use your app again.

share|improve this answer

You should try to give a user as much useful information as you can. "Page can't load" isn't nearly as useful as "There is a problem connecting to the internet" or "Our servers are down".

In general you should give information about what the problem is, and provide users with options of what they can do (if anything) about it.

Now if you're opening an app web view, you may not have any easy way of doing this. How you can do it becomes a technical question and outside the scope of this site. But I would look into trying to determine whether there is an internet connection before I display the web view. That way you haven't offloaded the handling to the browser yet and have more control over what you display.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.