Rockbox on Android is a complex topic, subject to the interpretation and 
expectations of each developer and user. Here is my view:

Android is a very different target from our hardware targets. On an iPod or a 
Sansa, we are the masters of the device. We control everything. Nothing happens 
without our say-so and we are usually overwhelmingly superior in capability to 
the original firmware. And even when we aren't, we are still the only 
alternative available to running the original firmware. It's Rockbox or bust.

Additionally, the people who load Rockbox on their MP3 players are typically 
tinkerers. People who are willing to try a "hacker firmware" on their device, 
are prepared for different behaviour and ready to do some tweaking to get 
things as they like.


On Android, things are very different. We are guests there. We must coexist 
with an operating system and heaps of other running apps. Users have a 
multitude of options and we will be merely one of dozens of music players to 
choose from.

The users who download Rockbox for Android are going to be very different from 
the people flashing Rockbox onto their iPods. They are not replacing the 
firmware of their phone, they are just testing another app. They will expect an 
app that works roughly like the other music player apps they've tried. If we 
deviate too much from that expectation, many users will quickly give up and 
uninstall. The first 15 seconds of user interaction are crucial.

I want the default experience of Rockbox for Android to be geared towards 
people who have never heard of us before. To the people for whom Rockbox is 
Just Another Music App. Eventually, they will find that we are more capable 
than other music apps. We can play more file formats, and we can play them 
better than the others.

But unless we survive the first 15 seconds of scrutiny, none of that matters. 
We cannot demonstrate our superior file format support in the first 15 seconds, 
because people don't store music they can't play on their phones. We won't even 
have time to show off our gapless playback, crossfade, equalizer or any other 
fancy stuff.

We may be technically superior, but the first impression is the user interface. 
We need to tailor it to feel familiar and simple, even for first-time users.

One part of that is the theme. I want to forego cabbie and use a discreet 
default theme that more resembles native Android, using the Android font and 
similar line spacing, maybe even similar icons. I want an .sbs with << || >> 
play controls at the bottom of the screen and a simple WPS with only album art, 
artist/song/album name, progress bar and play controls.

Another part is the behaviour. Our small-screen cursor-button history is very 
visible and we need to work to smooth off some of the rough edges.

I want the context menu to be a dialog, showing the previous screen behind it. 
I think that would make it a lot less confusing. I want our lists to have touch 
feedback (the orange blink). I want the select bar disabled completely until 
cursor keys are used. I want to look into how the first-time user most easily 
can find and play his music. Ideally, I would ideally like our 
vol/bass/treble/bal settings to be less list-y and more touch-focused.

So why not just go native? It is my opinion that distilling Rockbox into 
librockbox and coupling it to an android java GUI app is the way of the future. 
But I also think that future is some time off still. I think we can make a 
Market-worthy Rockbox app with our current GUI first, release it, and *then* do 
the library split and java app.

-- 
Björn

Reply via email to