Android port/Specification

From Stellarium Wiki
Revision as of 09:35, 23 December 2012 by Brady Brenot (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This page presents a high-level overview of the Android port and its goals, primarily non-technically, from a user or a designer perspective more than that of a programmer. To provide clarity to the specification, each section contains a rough sketch of what it ought to look like on the screen.

(Or, it will. This is still a work in progress)

r6cfJ.png

Summary

Rationale

Contents


Design

General

Style, sizing

  • paraphrase Android style guidelines; grid sizes; Androidy colors; action bar, etc.

Layouts

  • describe different layouts; DPI, dp

Standard phone layout

Main view

T2IsYl.png ymeapl.png

Menu

RUbYNl.png ViIKIl.png

  • It's not an Android menu, but it's not too alien to Android users who've never used Stellarium; the text in the menu lets them know what the possibly obscure icons mean
  • On the other hand, the icons are familiar to Stellarium users, are useful even without a translation, and the translucent design prevents obscuring the sky too much
  • An Android-style menu would be a very tell-tale sign that the UI was originally developed for Android; this is less so, making it more appropriate for porting over to other OSs (this may be a flimsy justification, but eh)

Search

  • Still thinking about this. Do we cover the whole screen? Do we make it translucent? Do we bother with autocompletion right away?

Collapsed / mid-search

LHiWEl.png 65vByl.png

  • But ought to be prettier than this (instead of a solid box, just an underline thing like most Android apps?)

After clicking the Search icon or pressing Return

  • TODO. Cover whole screen

Button feedback

  • long-press -> tooltip
  • highlight

Object selected

XfXZal.png M9piml.png

Playback

W8kayl.png SP8Lel.png

Accelerometer mode

VZRLkl.png QBPnol.png jV5MWl.png

(yes, Spica has been moved for clarity)

Idea:

  • Have a faint circle (or telrad circles? Maybe remove the white circle if Telrad is enabled. This requires either that MobileGui knows about the oculars plugin, or the oculars plugin knows about MobileGui) around the center of the screen.
  • When an object is selected, display its info in the infobox as usual. Around the circle, place an arrow pointing towards the object.
  • Shows the userInfoBox by default.
  • When an object is not selected, select the brightest object within the faint circle automatically, display its info in the infobox. The infobox will one button replacing the "deselect" and "center-on" buttons: something like a lock, to lock-in the highlighted object

User info box dialog

  • dialog for userInfoBox (working title) settings; e.g., current RA/DEC, Lat/Long, FPS, FOV, etc.

See the Accelerometer Mode picture for an example of what the userInfoBox looks like, and the sorts of things it can display.

Sky dialog

h8Bdol.png paIZWl.png

A dialog with additional options; the sort of options that are available on the bottom bar on desktop Stellarium. This dialog should focus things you can see with your own eyes in the real sky, as well as labels for things you can see with your eyes. This classification ultimately comes down to an arbitrary decision; what's important is that everything isn't lumped into one category (too much scrolling), but that we also don't have too many categories (too many things for the user to guess, and too much space being taken up on the side bar).

As with standard Android dialogs, 'clicking' anywhere outside of the dialog, or pressing Back, will close it.

View dialog

Everything that doesn't fit under the arbitrary classification of "sky" goes in here. Yes, most things in here are also placed on the sky.

Plugins dialog

As the above two, but for plugins.

Date / time screen

Needs to be designed

Location screen

Needs to be designed

Settings screen

Forthcoming

Items

Forthcoming

Landscape


KgWJQl.png

When changed to landscape orientation, little will change. The world viewport will remain in the orientation it was in before. Text will rotate by 90 degrees, as will button images (maybe). This is the same sort of thing that Google Sky and others do. The reason for not reorienting the entire app as most apps do primarily comes down to the accelerometer feature. If a user is using the accelerometer to look up at the sky, they may inadvertently change the app's orientation. Set up this way, the user will not lose sight of what they were looking at, the screen will not blank and refresh, and the controls will not change unexpectedly. This also greatly reduces the number of layouts we need to worry about.

Outdated mockups

Pull-down bar (old)

thumb screen thumb screen

This is not a standard Android design metaphor. A normal-looking menu is below.

thumb screen thumb screen

Normal menu is useless without translations. Normal menu also doesn't look like anything you'd get on Desktop Stellarium. On the other hand, the pull-down bar is inconsistent with other Android apps.

Implementation details

A more detailed breakdown of the implementation into tasks is at Android_port#Remaining_tasks, along with a list of required artwork and other details.

Discussion

Comments, anyone? Brady Brenot 03:26, 18 March 2012 (UTC)

Personal tools
Namespaces
Variants
Actions
in this wiki
other languages
Toolbox