Skip to content

Functional Operation

reneelynn edited this page Apr 8, 2014 · 13 revisions

Table of Contents

Application Entry - Clean Slate

"Clean Slate" = no pending "Stay logged in" session. Note that login view is only one that lacks action bar (black bar with a menu button) at top.

  1. Brief or no splash view (SpiderOak emblem)
  2. If this is a first-time-on-device (or first reinstalled) use of the Orange (SpiderOak-branded) app, then a preliminary view with links to "Need an account..." view and a button that leads to the real login view.
  3. If this is a launch of the Blue/Enterprise-branded app, and there is no value in the server setting, then the user is presented with a alert that they need to set the server, and left in the server-setting view when they tap "Ok".
  4. On any other non-kept-account entry, then the user is left directly in the Login view
(In transition separating Blue/Enterprise from Orange/SpiderOak-branded app versions, launches of the Orange version that have a residual alternate-server setting will prompt for changing the server.)

See, conversely, the Application Entry - With "Stay logged in" session pending

Login screen actions

Use Log in button:
  • Fill in username and password (password characters are hidden)
  • Elect whether or not to set "Stay logged in" button
  • Hit Log in button
    • If Stay logged in is checked *and* it's the first time you are using it with the selected account, you're conveyed to a "Please note" caution screen.
      • Either choice you make on this screen will continue the login. The choice effects the conduct of the application next time it is started.
      • If you accept with Ok, I understand, then subsequent restarts of the app will return to this login, until you explicitly log out. You can cancel the "Stay logged in" behavior in the settings section.
      • If you select Forget it, Forget me, then quitting the app and restarting it will place you in the login screen.
      • Regardless, subsequent attempts to log in to this account with "Stay logged in" active will not present this caution screen.
      • (I wonder how testing of these behaviors will be included in a formal testing agenda?)
    • On continuing a login past those preliminaries, or a transient Please wait // Authenticating // scrolling dots animation black "toast" box
    • and then either the Hive view, if the account has SpiderOak hive, or the account's Devices view
  • Login success:
    • Proceeds to either the Hive top-level screen, if account has Hive,
    • else account's Storage/Devices top-level screen
  • Login fails:
    • Presented with persistent dialog: Authentication error // Authentication failed - incorrect username or password, plus Ok button to dismiss
    • Returned to Login screen with credentials left as they were
Use Go to ShareRooms button
  • It has no values to fill in
  • Proceeds to ShareRooms top-level screen
  • Note that this is the way, without logging in, to get to a page with the action bar, by which you can get to the menu sheet.
Hit Learn more about SpiderOak » link
  • Proceeds to "About SpiderOak" screen
Note that the enterprise (blue) login process is slightly different, internally, than that of Orange, so at least successful login should probably be tested, distinctly, on each.

Application Entry - With "Stay logged in" pending

The login conduct for the pending account ensues.

See, conversely, the Application Entry - Clean Slate

Application Exit

(Android only.) When in the top level of one of the main sections, hitting the device Back button twice in quick succession will exit the app. A brief message will flash on the screen after the first hit of the device Back button, and the exit will happen if the button is hit again before the message disappears (1 second).

The Action Bar

The Action Bar is a black bar on the top of every screen except the Login screen and (mostly) the Menu Sheet. It has a "Back" button in the upper left corner, and on some screens it includes context-specific action buttons on the right hand side. I'll detail them when present.

The back button returns to the screen from which most traversal, besides either login or traversal caused by the back button, was incurred. The "top", or starting point of back traveral, reveals the Menu Sheet - see next.

The Menu Sheet

Often hidden under the left side of the main page is a menu of top-level sections, called the Menu Sheet. The main page slides right to reveal it when you hit the action bar "back" button from the top of one of the sections, or when you apply a swipe-right gesture to the action bar.

The menu sheet is covered, by the main page sliding left, when you select one of the menu sheet items, or when you tap in a blank spot on the visible parts of the main page.

The contents of the menu sheet vary depending on whether or not you are logged in. When logged-in, it includes these items that are not present when not logged-in:

  • a SpiderOak Hive item
  • a Devices section
When not logged-in, the menu sheet includes the above, but with the addition of a Log In item.

In both situations, there is a Sections part with these items:

  • ShareRooms
  • Favorites
  • Recents
  • Settings
and, finally, in both situations there is
  • an About SpiderOak item.

Content

This application's purpose is access to files stored with SpiderOak - both the content of the user's own accounts, and other user's content accessed via ShareRooms.

Content Navigation

There are several common features of the content list items in sections that present user content: SpiderOak Hive, Devices, ShareRooms, Favorites, and Recents.

The list-item presentation of content items that contain other content items consistes of an icon that indicates the type of container, followed by the name.

The list-item presentation of non-container content items, ie files, includes:

  • on the left hand side: the item-type icon, its name, text indicating the icon type, and a rough statement of the item's data size
  • on the right hand side: a rough indication of the the modification time and then a star, filled in if the item has been selected as a favorite and empty if not.
A plain tap on most items results in opening that item. (I'll note exceptions by case.)

For most containers - content items that exist as holders of other content items: Devices, ShareRooms, and folders - the application effectively "descends" to a view that lists the container's contents. The action bar "back" button in the resulting view returns to the container from which the descent was made.

Tapping on file-like item's star is a way to toggle whether or not the item is retained as a "favorite". (Only file-like items can be marked as favorites. No containers can be.) Items with Favorite status are listed in the Favorites section, and their content is downloaded so it is available at any time, including when it is offline. Tapping on the star of an item that is a favorite will clear the downloaded content for the item.

See the description of the Favorites section for more details about them, including the actions of registering and unregistering them.

A long tap on many items, particularly some special containers and all files, pops up a menu that offers actions on the long-pressed item. It's a modal menu, meaning things outside of the menu are dimmed and not accessible. There are some actions common to most or all items with action menus, including Open and Details. All files also include Send link, Save file, Share file, and either Remove from favorites or Add to favorites, depending on whether or not the item is already a favorite.

Other actions, specific to particular contexts, will be described in those contexts.

The pop-up action menu can be dismissed without selecting an item by hitting the device (not the one on the app's action bar) Back button.

Content Handling

File items have several actions associated with them which provide access to their content, or provide the means to share the content with others.

Invoking any content-handling action on a file registers that file in the Recents section. See the Recents section description for more details.

There are many kinds of files that have their own, special-purpose handlers.

Open/View
A quick tap on file entries, or the Open action in the long tap menu, activates either an internal or a intent-based viewing of the file contents. Many common file types, like documents, audio, pictures, and video, are handled common Android facilities, the browser widget in which the application runs, or custom applications installed on the particular mobile device.
Details
The long tap menu Details action navigates to a screen that presents the file's metadata details, including things like type, size, owner, and so on.
Send link
Offer a choice of applications by which to send a web link to the SpiderOak-stored file.
Save file
Save a copy of the file in the /Downloads file on the devices external media.
Share file
Like Send link, but convey the contents of the file, rather than a link to the contents. Different facilities may be available for this action than are available for Send link.
Add to or Remove from Favorites
Selecting this action, or tapping on an empty star on the right side of of a file entry, register that file as a favorite. See the Favorites section for details about Favorites.

Where Downloaded Stuff is Placed

When just navigating the content collections, only the details characterizing the objects - the metadata - are retrieved from the server. It is in invoking the Content Handling actions - all of them except the Details action - that actual item contents is downloaded to the device.

Saved files
When you save a file using the long-press menu Save option, the file contents are situated in /sdcard/Download, under the name of the original file. (The name may be appended with a number, in order to distinguish from already existing copies.)
Favorites
When you mark a file as a favorite, by pressing the file item's star or using the long-press menu Add to favorites option, the file's contents are downloaded to the device, but they are situated to be found easily by the application, not by the user. (The Save option should be used, instead, for easy retrieval of the contents from the devices file Downloads sdcard directory.) When you register a file as a favorite, the contents are stored within particularly named subdirectories of /sdcard/Download/SpiderOak/.favorites/ , appending the file's original path and name for the location of the content.
Viewed and Shared files
An intermediate copy of a viewed or shared file's content is retrieved for internal use by the application, in the application's internal cache, for conveying to the designated viewing or sharing handler. Different Android implementations maintain varying clean-up regimes for such cached data. Users can deliberately free up such occupied space by using the Android system settings Manage Applications / SpiderOak / Clear Cache action.

Sections

SpiderOak Hive section

Tapping on the menu sheet SpiderOak Hive entry closes the menu sheet, leaving you at the top of the SpiderOak Hive Folder. The Hive folder is created by the desktop application an each desktop device that is registered for the account's SpiderOak backups. Files and folders placed in the Hive folder are synced between the Hive folders across the account's registered devices.

The app's SpiderOak Hive section provides read-only access to the items in the common Hive folder. Like any folder, it can contain files and other folders. You can perform all the Content Navigation and Content Handling on the contents.

Device section

Below the SpiderOak Hive entry in the the Menu Sheet is a list of items, each representing one of the computers - identified as "devices" - registered for backups in the currently authenticated account. The device entries include the respective logos of the device's operating system.

Tapping then entry for a device closes the menu sheet and places you in a view of the files and folders at the device's top level. You can perform all the Content Navigation and Content Handling on the contents.

ShareRooms section

SpiderOak users can select folders, from among those included in their device backups, for access by other users. Collections of selected folders are made available as ShareRooms.

Each SpiderOak account has a selected Share ID, which is associated with every ShareRoom created in the account. Each ShareRoom has a distinct Room Key. People obtain access to each Share Room using its unique Share ID and Room Key.

ShareRooms can optionally have their own passwords, required for access to the contents of the ShareRoom.

The comprehensive list of ShareRooms associated with a SpiderOak account is available only to users logged in to the account. That way they can choose to whom they reveal the the details - Share ID and unique Room Key, as well as optional password - of the individual ShareRooms.

When logged in to an account, the application's ShareRooms section is divided into two subsections:

  • "My ShareRooms", with the list of ShareRooms associated with the account
  • "Public ShareRooms", with the list of any ShareRooms that the user has explicitly elected to visit with the app.
When not logged in, the ShareRooms section only shows the "Public ShareRooms" subsection.

My ShareRooms subsection

My ShareRooms is a navigable list of SpiderOak ShareRooms belonging to the currently logged-in account. (While the individual ShareRooms are each accessible to those knowing their respective Share ID and Room keys, the navigable listing is accessible only to the authenticated owner of the list.)

Public ShareRooms subsection

To add a Public ShareRoom to the roster:
Use the "+" button in the upper-right of the screen.
You will be brought to a screen with fields for the desired ShareRoom's Share ID and Room Key.
  • If the "Stay logged in" switch is active when you add the ShareRoom, the entry will be retained across application sessions. See Remembering, below, for more details.
Entering the the correct values will add an item for the ShareRoom. That item will either show the description of the ShareRoom, if it's not password protected, or else the a lock icon followed by the Share ID and Room Key, italicized, if it is. See Password Protected ShareRooms, below, for more details.
To remove a ShareRoom from the list:
You can use the "X" button on the right hand side of a Public ShareRoom's entry to dismiss the Public ShareRoom.
You can also use the item's long-press menu "Forget" to dismiss the entry.
Remembering:
  • You can toggle whether or not a Public ShareRoom is remembered across sessions using the long-press menu.
  • Public ShareRooms that are remembered while no logged in to any account are included when subsequently logged in to various accounts, and retained when logged out (until the user elects to forgot them).
  • Public ShareRooms that are remembered while logged into an account, but not already remembered while not logged in, are not retained while the account is logged out, but are returned when the account is next logged in.
Password Protected ShareRooms
  • Indicated by a lock icon in front of the ShareRoom description, in the locked position when the correct password is not provided, and in the unlocked position while the password is provided.
  • The brief description of a password protected ShareRoom is not available while unlocked, so the ShareRoom is described by the Share ID and Room Key in that situation. They are in italic font, to further distinguish the locked state.
  • Tapping a locked ShareRoom, or selecting the long-press "Open" item, brings you to a screen for obtaining the password. When the correct password is provided, then the app embarks into the ShareRoom's contents. If the correct password is not provided, you are returned to the main ShareRooms section, with a brief message indicating the problem.

Favorites section

The Favorites section contains a list of files that have been registered for it using the Add to Favorites action, or by tapping on an empty star on the right side of all file item entries.

Stars of files that are currently registered as favorites are filled with orange. Tapping on the star of registered favorites, or selecting the Remove from Favorites action, deregisters them, removing the stars orange coloring.

While files are registered as favorites, an copy of their entry is included in the Favorites section, and their content is stored locally on the mobile device, so it is immediately accessible when the file is viewed or shared. Because the content is locally stored, favorite file's content is also accessible when the device is offline.

Unlike recents, Favorite status lasts across sessions, until the user deliberately deregisters them. However, favorites are associated with the current account, and the list is cleared when the user logs out.

(The first time in the use of the app that you select an item as a favorite, you are presented with a dialog explaining that the content will be downloaded, and asked for confirmation. If you accept, that dialog will not be presented to you again, and the item gets favorite status. If you refuse, then the item will not get favorite status, and you will be presented with the confirmation dialog next time you initiate marking an item as a favorite.

Any time that you tap the star of a file already registered as a favorite, you will be prompted to confirm that you want to unregister the favorite status.)

Recents section

You can use the recent entries to return to files that you have taken actions on during the current app session.

Invoking any content-handling action on a file registers that file in the Recents section. The accumulated recents list is maintained only until the end of the session or until the current account is logged out.

Settings section

  • Send feedback
    Send Feedback item
    Tapping on it launches ?mail composition?
  • Account section: present only if logged in:
    Name - full name associated with current account's
    Tapping on it goes to Account Details screen, which includes:
    • Name (again)
    • Username: official username for the account
    • Used: amount of storage used
    Stay logged in
    Tapping on No | Yes button toggles
  • Primary Server section - only in Blue, not in Orange
  • Passcode section: present only if logged in:
    ...
  • Version
    Version
    Displays the current release version
  • Logout button

Server

  • Change while not logged in
  • Change while logged in

About SpiderOak section

Really just a screen with text.

Account Details screen

Passcode Settings screen

See the Passcodes and Application Resumption section, below, for details.

Logout transition

Recents and Favorites are removed on logout, so info private to authenticated operation is not leaked to unauthenticated operation. Upon logging back in, Favorites are returned but Recents are not.

Similar holds for details about what share rooms are conveyed from non-authenticated session into authenticated sessions, and vice versa.

Passcodes and Application Resumption

Any account can have a distinct, four-digit passcode and passcode timeout. Those choices are local to the mobile device where you set them - they are set independently on different mobile devices. At various moments in application operation, in order to easily authenticate the user, the application challenges the user to enter the passcode.

Those moments are:

  • Return the application after switching to another one, if the amount of time away has been longer than the selected passcode timeout
  • Access to most actions that change the passcode
  • Upon changing the passcode, reentering the new one to confirm that what was entered is what was intended
When the passcode challenge is being used to protect access to a logged in account upon return to the app, the passcode can be bypassed by tapping an X in the upper right of the challenge screen. Upon confirming the bypass the application will logout of the current account and the user will be returned to the application login screen.

Any time that the user attempts to satisfy a passcode challenge and fails, they are presented with a notice of the number of immediately successive failure and that the limit is 5. After five successive failure the application logs out of the current account and returns to the login screen, as with passcode bypass, above.

In either case where the challenge was bypassed, the next time that the logged-out account is logged in (on that device), the user will be notified that they had been logged out due to passcode challenge bypass, and offered the choice of retaining or abandoning their current passcode.

The settings screen has an entry for the account passcode when the account is logged in. The entry indicates whether or not the current account has an assigned passcode.

  • If the account does not have an assigned passcode, then selecting the item prompts for the passcode and confirmation. If they're identical, then the user is returned to the main settings screen with the passcode indicated active
  • If the account does have an assigned passcode, then selecting the item prompts the user for the current passcode. If the correct passcode is entered, the user is brought to the passcode details screen.
The passcode details screen:
  • Turn Passcode Off - if the user satisfies another passcode challenge, then the passcode is deactivated. They are returned to the main settings screen.
  • Change Passcode - if the user satisfies the passcode challenge, then they are prompted to provide and confirm a new passcode.
  • Require Passcode - this sets a timeout period within which the user will not be passcode-challenged upon returning to the app after suspending. It defaults to Immediately, and can be set to 1, 5, and 15 minutes, and 1 and 4 hours.
    • When changing the timeout, the user has to hit the back button to return to the passcode settings screen.