HAP+ for Android

An Android app to retrieve, upload and manage files from a Home Access Plus+ server! (exciting, right?)

Screenshots

Download from the Google Play Store!

Prerequisites

  • An Android device running Android 5 Lollipop or newer
  • An Internet connection
  • Some free space to allow files to be downloaded
  • Office apps to allow downloaded files to be viewed/edited (see Recommended Office Apps)

Feature List

  • Browse
  • Download
  • New Folder
  • Delete
  • Rename
  • Dark theme (and I'm proud to say that it had one before Android 10 was released)
  • Upload
  • Cut/copy/paste
  • An 'About' screen
  • Folder quick jump
  • Search

Upcoming features:

These will hopefully come soon™

  • Recent files
  • Download/upload queue
  • A proper Settings menu

Configuration

Upon launching the app for the first time, you will have the option to configure the app manually or with a configuration file. To configure the app manually and gain full functionality, all that's required is the HAP+ server URL.

Warning

If you wish to debug the app, you can enable 'developer features', which will display some extra options that may make the app unstable.

A configuration file is in JSON format, and is required to have the following options set.

Option Type Default Info
SERVER_URL String N/A The HAP+ server the app should contact
SUPPORT String N/A The school's IT support email
THEME Integer -1 Set to -1 for follow system, 1 for light, 2 for dark
WARNING Integer 50 Set to 0 to disable warnings, otherwise any number up to and including 4096 for the size in MB to trigger a warning of a large download/upload
RECENT Integer 20 The number of recent files to display

Example JSON file

{
    "SERVER_URL": "https://domain.com/hap",
    "SUPPORT": "email@domain.com",
    "THEME": -1,
    "WARNING": 50,
    "RECENT": 20
}

This can be used for quick and easy app setup.

Login

If the URL needs to be changed, the HAP+ logo can be tapped, and the URL changed from here.

Info

If you do not want credentials stored on your device, uncheck the 'Keep me logged in' box

By ticking the 'Keep me logged in' box, the app will store your username and password on your device. The password is encrypted with AES GCM 128, with the key stored in the Android Keystore. The password will only be used for authentication. If you would prefer your credentials not to be stored, uncheck the box and this will not happen. Note that you'll have to log in again after the session token expires or after you've closed the app.

Downloads

Downloads are restricted to a maximum of 4GB in size, due to the limitations in the FAT32 filesystem. They will not be deleted after the app is uninstalled.

Bug

Due to issues with Android's Storage Access Framework (SAF), it is not recommended to edit Microsoft Office documents using the Microsoft Office apps if you have saved the file to an external SD card. Doing so may result in document corruption.

Currently, there aren't any known issues when working solely with the device's internal storage and Microsoft Office apps.

For best compatibility when working with external SD cards, it is recommended to use Google's suite of office apps:

Common Questions & Issues

As you can probably tell, this is a work in progress - there are plenty of bugs to be found... If you manage to find one, you can report it to the email address on the Google Play listing cowsay256dev@gmail.com. It helps out a lot if you report the following when hunting down bugs (basically, the more info you give, the better!):

  • Model of device used and Android version
  • Steps to reproduce the issue
  • Error messages produced
  • Screenshots (if applicable)

Faq

The app continually fails to load drives/folders, even with a working, stable connection

Logging out then back into the app tends to fix this. Otherwise, clear the app's data and try again.