Existing Instrumentation

We expect our PhoneLab platform to include an increasing amount of instrumentation added both by PhoneLab developers and by external research teams. If our build already contains instrumentation recording what you’re interested in, you can proceed directly to requesting data.

Logging Branches

Instrumentations are stagged in their respective branches by category, such as network, location, or power. Here is a list of current logging branches:

  1. logging/android-5.1.1_r3/1/network
  2. logging/android-5.1.1_r3/2/power
  3. logging/android-5.1.1_r3/3/location
  4. logging/android-5.1.1_r3/4/packagemanager

Add Your Instrumentation

To add instrumentations to these branch, for example, logging/android-5.1.1_r3/1/network, please follow these steps:

First, if you have not cloned the repository yet:

$ cd <WORKING_DIRECTORY>
$ repo init -u ssh://<USERNAME>@platform.phone-lab.org:8080/platform/manifest -b logging/android-5.1.1_r3/1/network
$ repo sync

The <USERNAME> is your user name on our Gerrit server.

Next, figure out the repository which you want to add instrumentation, say frameworks/base, create a working branch:

$ cd frameworks/base
$ git checkout -b my_instrumentation

Then you add the instrumentation, commit and upload your changes for review:

$ git commit -a -S
$ git push aosp refs/for/logging/android-5.1.1_r3/1/network

Note

Note the remote branch name when you push: it is a special Gerrit pseudo branch for changes to be reviewed.

Here is a list of existing instrumentations on our platform.

Summary

PhoneLab’s instrumented Android platform currently contains:

  • 11 tags, 20 actions,
  • ... in 9 categories,
  • ... added by 2 institutions.

Catetory: Activity

Tag: Activity-LifeCycle-QoE

  1. Action: onStart, onPause, onResume
    Description: Activity lifecycle events

Catetory: Location

Tag: Location-Misc-PhoneLab

  1. Action: android.location.LOCATION_CHANGED
    Description: Location update.

Catetory: Network

Tag: Network-Telephony-PhoneLab

  1. Action: android.intent.action.ANY_DATA_STATE
    Description: Cellular data connectivity changed.
  2. Action: android.intent.action.DATA_CONNECTION_FAILED
    Description: Cellular data connection failed.
  3. Action: android.intent.action.PHONE_STATE
    Description: Phone calling state changed (incoming call).
  4. Action: android.intent.action.SERVICE_STATE
    Description: Cellular service state changed.
  5. Action: android.intent.action.SIG_STR
    Description: Cellular signal strength changed.
  6. Action: android.telephony.CALL_FORWARDING_CHANGED
    Description: Call forwarding status changed.
  7. Action: android.telephony.CELL_LOCATION_CHANGED
    Description: Cell tower location changed.
  8. Action: android.telephony.DATA_ACTIVITY_CHANGED
    Description: Cellular data activity.
  9. Action: android.telephony.MESSAGE_WAITING_CHANGED
    Description: Message waiting status changed.

Catetory: PackageManager

Tag: PackageManager-Misc-PhoneLab

  1. Action: android.intent.action.PACKAGE_{ADDED, CHANGED, REMOVED}
    Description: Package installed/uninstalled/updated.

Catetory: Power

Tag: Power-Battery-PhoneLab

  1. Action: android.intent.action.BATTERY_CHANGED
    Description: Battery status changed.

Tag: Power-Screen-PhoneLab

  1. Action: android.intent.action.SCREEN_OFF
    Description: Screen turned off.
  2. Action: android.intent.action.SCREEN_ON
    Description: Screen turned on.

Catetory: Spinner

Tag: Spinner-State-QoE

  1. Action: ProgressBarEvent
    Description: Start and end of indeterminate progressbars

Catetory: Usage

Tag: KeyEvent-UserAction-QoE

  1. Action: HardwareTouchEvent
    Description: User pressed a key

Catetory: View

Tag: View-UserAction-QoE

  1. Action: TouchEvent
    Description: User touched item

Catetory: WebView

Tag: WebView-Update-QoE

  1. Action: WebViewUpdateEvent
    Description: Webview loading progress
  2. Action: WebViewUpdateEvent
    Description: Webview loading progress

Tag: WebView-UserActino-QoE

  1. Action: WebViewTouchEvent
    Description: User touched item in webview

Last updated 2016-12-02