Ubuntu One for Android

Comment

This Spec is being heavily edited, consecutive sections will be revealed when finished
Notation: Apd stands for Android powered device (phone or other mobile Internet-enabled device)
Contact / GSoC project page: https://wiki.ubuntu.com/GSoC/2010/MichalKarnicki/

Summary

This documentation specifies features, that would appear in Ubuntu One for Android platform. It justifies needs for specific features and their inner workings. The aim of the project is to deliver Ubuntu One service to Android powered devices (in particular, smartphones). The application would enable Ubuntu users not only to browse files in the cloud from their phone, but also share experience on the spot using URLs to their published U1 resources, instantly upload camera pictures or download music. Eventually, the aim would be to implement full-featured syncdaemon for specific UDFs. Ubuntu One is currently being intensely extended with new features, let's take that cloud mobile.

Rationale

Computer users like flexibility and there are more ways to get to your files in the cloud than through PC/laptop/netbook. Smartphones are becoming increasingly popular and the missing link here for Ubuntu One project is a client app for Android (amongst other platforms like iPhone & Blackberry). Daily use of mobile phones/devices justifies the need for such application. We can see recent proposals supporting this idea:

Use cases

When Victoria makes a picture using her Android powered phone, she can easily publish it by going to Menu -> Share -> Ubuntu One. She then can e-mail or tweet (or use otherwise) the public URL of that file easily.

Tom made some notes on his laptop last night, but forgot to take it with him the next day. No worries, he can open up Android U1 and browse the cloud for the file he needs.

Future: Each time Abby makes a picture with her phone, it appears on her computer (naturally, on whatever connection he prefers, wifi preferably, slower connections might not be suitable). She often forgets to take the USB cable with her, so she also prefers to manage music on her phone through the cloud (file sync).

Assumptions

Application developed in tight communication with Ubuntu One team to ensure flawless functionality and back-end support of proposed features.

Design

The application should be user friendly, have a clear interface and therefore be easy to use. This specification section will surely get expanded.

Features:

Implementation

The project will be developed in Java language, the choice of Android platform. CouchDB has an existing Android library, see links below.

BoF agenda and discussion

List of features that are possible (not necessarily feasible during summer period) for the project to implement. EDIT: We have picked the best/feasible ones for GSoC, features listed in Design section.

Planned/future features:

Another idea (not necessarily feasible during summer /GSoc). We could design a plugin system to Ubuntu One (based on Android intents), similarly to what Locale application has. Then, any application that supports couchdb could plug in to Ubuntu One for Android to pull/update couchdb data in easy, uniform way (to say more concisely: open Ubuntu One for Android and:

https://launchpad.net/tomdroid - progress is little, we could integrate that functionality as a plugin

Comments and feature requests

Please leave any comments here. Feature requests and ideas are more than welcome!

Questions

If you have any questions about the project, leave them here or contact me directly (https://wiki.ubuntu.com/GSoC/2010/MichalKarnicki)


Other/TODOs

Other notes

http://code.google.com/p/apps-for-android/


CategorySpec

specs/UbuntuOneForAndroid (last edited 2010-05-30 23:13:14 by chello089072085049)