See also the Table of Platforms Supported.

WORK IN PROGRESS

How to address multiple platforms

edit

There are many mobile platforms out there and developing a great Wikimedia experience for all of them is not trivial. The Wikimedia project must focus on the widest reach. This implies supporting about 5-8 platforms, with potential variants and versions inside each.

We are proposing a dual approach to survive in this mess:

  • A generic Wikipedia mobile app written in HTML5/CSS/Javascript should offer the basic functionality and be ported easily to as many platforms as possible using a framework like phonegap.
  • Specialized tools requiring features not covered by the "web app" toolkits can go native and target a specific platform. Ports to other platforms can be made on the basis of community offer and demand.

Specs for a complete Wikipedia app

edit

Rationale

edit

w:Help:Mobile_access#Applications shows a bunch of Wikipedia based apps for the iPhone (including the official one) but all of them are unidirectional (read only). An official Wikipedia app should also provide the means to contribute casually & on the go.

This is the type of app we are after:

  • Browsing content in your preferred language is easy and fun.
  • Also playing and storing media files in your device.
  • Offers information relevant to your preferences and location.
  • Invites to share articles & media with your friends.
  • Saves bookmarks and full content for later/offline reading.
  • Easy contributions: rate an article, fix a typo, geolocate an article, upload & embed a picture, undo last change...
  • Suggestions: Article Feedback, Add missing images, patrol this new article, this article needs improvement.
  • Notifications: you've got a message!, watchlist update.

Not all this needs to be on the first day! See below for features specified and in their way for implementation.

Features committed

edit
  • Bookmarks
  • Search
  • Graceful offline degradation
  • Browsing History
  • Geo specific articles

Features assumed

edit

Browsing

  • Site search by keywords.
  • Recently browsed articles are kept as local history.
  • Jump to related categories & external links.

Localization

  • Font rendering and text input (e.g. for search) work for the languages & scripts supported in the device.
  • Default language is the one used in the device.
  • Registered user can change preferred language in Settings.

Multimedia

  • Audio and video content can be streamed & downloaded.
    • Ogg Vorbis, Theora and/or WebM playback for OSs that don't natively provide it (eg iOS). Unless Wikimedia starts serving MP4 transcodes, most non-Android devices won't have native support for these, but ARM-optimized decoders are available and playback could be embedded. --brion 22:59, 15 April 2011 (UTC)[reply]

Authentication

  • Registration of new account.
  • Global log-in.
  • Check profile (User page + Talk:User page).

Watching

  • Watch/unwatch articles.
  • "Favorites" = Watchlist mobile UI

About

  • Local content: About the Wikipedia project.
  • Local content: How to contribute.

Wishlist

edit

Someone is looking at the appropriateness and feasibility of these. Add and sign your proposals at the bottom, ideally linking them to a wiki page pr bug report with all the details.

Wikimedia services integration

edit

Between mobile sites and apps, Wikimedia services integration offer an elegant (and usually simple to develop) way of connecting mobile users to Wikimedia projects.

  • Bookmarks in the Browser app or in the device desktop invite users to discover Wikimedia projects since the day they get their new mobile device. Idea: a single URL with browser and language detection, capable to redirect each user to the best default destination.
  • Search integration offers the possibility to define e.g. Wikipedia as a preferred or additional target. This search engine might be part of the platform's system UJI, be part or an extension of the browser, be provided by an application... Our API needs to answer the needs of the developers of these engines.
  • Share integration offers the possibility to upload content to Commons directly from the default camera app, the media player, the file manager. Our API needs to be checked against the share frameworks available in some mobile platforms.
  • Accounts integration offers the possibility to log-in users automatically and set some preferences from their mobile devices, enhancing the user experience when interacting with the Wikimedia sites and services. It would also help us gathering a bit more or registered users apps and less anonymous/IP based stats more difficult to evaluate.
    • Consider implementing OAuth for API access; advantages in avoiding exposing passwords directly to client apps (an app's authorization can be revoked separately), and potential ability to provide read-only or otherwise limited access. --brion 22:57, 15 April 2011 (UTC)[reply]

See the table of integrated services in each mobile platform.