88io Android App

1. Introduction

Android 88.io App is a Helper App created to complement the 88.io Web Console. It helps overcome web browser limitations by performing those native operations on your mobile phone that the web console is not able to perform through the web browser.

  1. Download
    https://dl.88.io/android/88io.apk

  2. License
    https://discuss.88.io/t/personal-console-license/406

  3. Source Code
    https://repository.88.io/android

2. User Interface

The following applies to 88.io Android App version 6.7.150

88io_settings

2.1 Main Menu

88io_settings_numbering

  1. Click on History to see what the app is has been doing in real-time.
  2. Service Status indicates whether the logging service is currently running.
  3. On Off Button to control the running of the data logging service.
  4. Location accuracy should be set to high to use satellite signals, but can be lowered to reduce battery drain.
  5. Frequency of logging should be every 300 seconds or less in offensive mode and 1800 seconds or more in defensive mode.
  6. Distance between logs should be 50 metres or less in offensive mode and 100 metres or more in defensive mode.
  7. Angle can be set to 0 if fine grain plotting of your track around corners is no needed.
  8. Accuracy Limit should should be set to 0.
  9. Days to Keep should be set to 14.
  10. Offline Buffering should be on to allow logging of data even if you do not have internet connection.
  11. Wake Lock allows the app to stay wake to log data so should be on in most cases.
  12. Log Bluetooth should be on during offensive mode to detect bluetooth devices and other COVID apps near you.
  13. Log Wifi should be on during offensive mode to better locate you position indoors.
  14. Log Cell should be on during offensive mode to better locate you position.
  15. Save On Device should be on all the time so you have a record of the environment you are in and you have been through.
  16. Send To Server if you want the data you have collected to be sent to the MAP APPLICATION in real-time (you need to create an Anonymous or Member Alias in IDENTITY TIMELINE first).
  17. Device Identifier should be left blank unless you are unable to connect.
  18. Server URL is the Relay Server URL from MAP APPLICATION -> Session Map -> Session List.
  19. Version number of the software you are using, since it does not check version for privacy reasons you need to check yourself.

2.2. History Page

From the History page you can see the type of information being logged on your phone.

On some phones, even if you have turned Bluetooth logging on, Bluetooth signals are NOT logged when the screen is off (e.g. like in your pocket). You can see Bluetooth is missing in some entries in the image below.

Android 88io Mobile App has a special NO SCREEN OFF feature. If you keep the app displayed on your screen, then your phone's automatic screen off will be disabled - allowing Bluetooth signal collection to continue on those troublesome phones that switches Bluetooth scans off when screen is off. Note this is OPTIONAL you should have enough data for contact tracing from continuous collection of other radio signals e.g. GNSS, WiFi and Cell Tower - which occur even when the screen is off.

88io_history

Note when your movement is less than the distance threshold (default 50 metres) the app will still log once in a while (default frequency is 5 minutes) to collect any new signals (as can be seen above).

3. Collected Data

Cell Tower Signal

Mobile phone signals collected from the cell phone towers are stored based on their Cell Global Identity which made up of MCC+MNC+LAC+CI .

1. Information Collected

  1. Mobile Country Code (MCC)
    https://en.wikipedia.org/wiki/Mobile_country_code

  2. Mobile Network Code (MNC)
    https://en.wikipedia.org/wiki/Mobile_Network_Codes_in_ITU_region_2xx_(Europe)
    https://en.wikipedia.org/wiki/Mobile_Network_Codes_in_ITU_region_3xx_(North_America)
    https://en.wikipedia.org/wiki/Mobile_Network_Codes_in_ITU_region_4xx_(Asia)
    https://en.wikipedia.org/wiki/Mobile_Network_Codes_in_ITU_region_5xx_(Oceania)
    https://en.wikipedia.org/wiki/Mobile_Network_Codes_in_ITU_region_6xx_(Africa)
    https://en.wikipedia.org/wiki/Mobile_Network_Codes_in_ITU_region_7xx_(South_America)

  3. Location Area Code (LAC)

  4. Cell ID (CI)

  5. Signal Strength (SS)

  6. Network Name (NN)

  7. Signal Type (ST)

2. Signal Types Supported

Currently logging of the following mobile signal types (ST) are supported:

2G: GSM
3G: WCDMA
4G: LTE
5G: NR

These may be added if required:

2G: CDMA
3G: TD-SCDMA

3. Information Stored

The collected values are stored as a JSON element

{ "ST.MCC.MNC.LAC.CI" : ["NN", SS]}

e.g.

{ "lte.505.03.20249.5381663" : ["TPG", -113]}

4. Privacy

All data are collected on your phone stored locally on your device for your exclusive use only. If you choose to send some of the data out, you can use the Fiduciary Exchange to protect your privacy completely.

4. HTTP POST

4.1 POST URL

Parameters supplied in the URL

  1. id=
  2. timestamp=
  3. lat=
  4. lon=
  5. speed=
  6. bearing=
  7. altitude=
  8. accuracy=
  9. batt=
  10. version=

id= is set to the "Public Server" value from the User Interface

4.2 POST BODY

  1. rssidata the bluetooth data
  2. wifidata the wifi data
  3. cellstrength the cell data

Map Server

To view what is being tracked by the 88io app, on the Android phone, go to https://app.contacttrace.com.au and click on the location_pin button, select Import Pin and browse to Documents -> 88.io folder (the files stored in this folder are in .txt format), select the file to be imported.

If the file is successfully imported, the orange pins will be displayed.

88io_pins