wiki:AndroidBoincTodo

Version 26 (modified by davea, 12 years ago) (diff)

--

Android/BOINC development items

Some remaining development tasks. Please contact me (David Anderson) and post to boinc_dev if you want to help.

Short Term:

  • BOINC Client
    • Higher hysteresis for battery level and temp control to avoid frequent suspend/resumes.
    • Expose values for battery level and temp suspend and resume (hysteresis) to preferences.
  • Menu should have controls for
    • Suspend/resume computing
    • Exit (shut down everything - GUI, BOINC client, and apps) (Completed)
      • This should be shown for all the tabs. Currently only shown on Status Tab. (Completed)
  • Optionally show icon in notifications (top bar) showing whether BOINC is running apps (Working WCG - M)
    • Add preference for whether to show this icon (Working WCG - M)
  • Tasks tab
    • Show elapsed time for each task (Working WCG - M)
    • If a task is touched, expand height of task to show additional information and actions that can be taken:(Working WCG - M)
      • Display Project Name [information] (Working WCG - M)
      • Display User Friendly Application Name [information] (Working WCG - M)
      • Display deadline [information] (Working WCG - M)
      • Abort Task [button/action] (Working WCG - M)
      • Suspend/Resume Task [button/action] (Working WCG - M)
  • Transfers tab
    • Retry (Completed)
    • Abort (Completed)
    • If backed off, time until retry (Completed)
  • Preferences tab
    • Use at most X% of processors (Completed)
    • Suspend work when non-BOINC CPU usage above X (Completed)
    • Use at most X% of CPU time (Completed)
    • Suspend work when battery below X% (default 95%)
    • The preferences page needs to be reorganized, with the main X options shown before the "Show Advanced Preferences" option. SAP needs to be the last item on the default view.
    • The "Show Advanced Preferences" Needs to be a twisty tab or something other than a check box if we are showing additional options below it.
    • When changing the value of an advanced option, there needs to be a cancel button put next to the Ok. (Completed)
  • Projects Tab (Working Joachim)
    • Include logo in list view
    • Show Update in list view
    • Pressing project shows new Activity with following information:
      • User account info
      • Project links
      • Controls (i.e. detach, suspend, no new tasks)
      • project description
  • Event Log Tab (Completed)
    • A tab is needed to show the log file. Should be called Event Log. (Completed)
    • Log file display needs to include timestamp (Completed)
    • Only needs client messages – not manager messages (Completed)
    • Button needed for ‘copy all messages’ (to paste into email/forums for help) (Completed)
    • Remove retrieval from ClientStatusMontitor? (Completed)
    • UI: Append new messages to the local message array and only send an update event if a new message was added or an old message deleted. (Completed)
  • Project attach
    • show entries of all_projects_list.xml in addition to manually entering project URL. (Completed)
    • usage of get_project_config (min pwd length, user name vs email, account creation enabled) (Completed)
    • include terms-of-use (Completed)
    • When attempting to login, there needs to be a link that will open that projects "forgot password/Username" Page. The link should go to <project url>/get_passwd.php (Working WCG -M)
    • A link should show under the last attached project to attach to another project. For example, if you are attached to 3 projects, the forth line should be attach to project. (Working WCG -M)
  • Power Management
    • Set Android power management according to client status. Preventing CPU throttling when display is off. (Completed)

Mid Term:

  • Use Action Bar with Client computation status and controls from Menu. (Requires Android 3.0)
  • Support attach to account manager
  • Add SD card support in client
    • move BOINC's projects/ directory to SD card an force move of binaries into slots (executable)
    • think about how to handle storage status and preferences of clients
  • Reconsider how BOINC client retrieves device state on Android (i.e. battery: charger, temp and level ; network: wifi state). Problematic because location of this information varies among devices/vendors/versions.
    • Possible approach: retrieve information through Java SDK, universal for all devices. Write to a file and let BOINC client retrieve information from there. Needs security mechanism in case Java application is off but Client is running (timestamp?)

Attachments (22)