Android Network Measures

Provide network QoS & QoE measurement tools for Android.

License

License

Categories

Categories

Net
GroupId

GroupId

io.apisense.network
ArtifactId

ArtifactId

android-network-measures
Last Version

Last Version

1.1.2
Release Date

Release Date

Type

Type

aar
Description

Description

Android Network Measures
Provide network QoS & QoE measurement tools for Android.
Project URL

Project URL

https://github.com/APISENSE/android-network-measures
Source Code Management

Source Code Management

https://github.com/APISENSE/android-network-measures

Download android-network-measures

How to add to project

<!-- https://jarcasting.com/artifacts/io.apisense.network/android-network-measures/ -->
<dependency>
    <groupId>io.apisense.network</groupId>
    <artifactId>android-network-measures</artifactId>
    <version>1.1.2</version>
    <type>aar</type>
</dependency>
// https://jarcasting.com/artifacts/io.apisense.network/android-network-measures/
implementation 'io.apisense.network:android-network-measures:1.1.2'
// https://jarcasting.com/artifacts/io.apisense.network/android-network-measures/
implementation ("io.apisense.network:android-network-measures:1.1.2")
'io.apisense.network:android-network-measures:aar:1.1.2'
<dependency org="io.apisense.network" name="android-network-measures" rev="1.1.2">
  <artifact name="android-network-measures" type="aar" />
</dependency>
@Grapes(
@Grab(group='io.apisense.network', module='android-network-measures', version='1.1.2')
)
libraryDependencies += "io.apisense.network" % "android-network-measures" % "1.1.2"
[io.apisense.network/android-network-measures "1.1.2"]

Dependencies

compile (3)

Group / Artifact Type Version
com.android.support » appcompat-v7 jar 25.1.0
dnsjava : dnsjava jar 2.1.7
com.google.code.gson : gson jar 2.8.0

Project Modules

There are no modules declared in this project.

Maven Central

Android Network measures

We aim to provide a minimalistic library to perform network measures on Android.

Available tests

Currently there are 7 available test types:

  • DNS lookup
  • Ping
  • Traceroute
  • TCP Download
  • TCP Upload
  • UDP Download
  • UDP Upload

Thoses tests are for the most heavily inspired from Mobilyzer, but easier to use (at least we hope).

Usage example

Require dependency

Maven

<dependency>
    <groupId>io.apisense.network</groupId>
    <artifactId>android-network-measures</artifactId>
    <version>1.1.0</version>
</dependency>

Gradle

compile 'io.apisense.network:android-network-measures:1.1.0'

Call a measurement

Here is an example of a DNS test:

import io.apisense.network.dns.DNSLookupConfig;
import io.apisense.network.dns.DNSLookupTask;
import io.apisense.network.MeasurementCallback;
import io.apisense.network.MeasurementResult;
import io.apisense.network.MeasurementError;

DNSLookupConfig config = new DNSLookupConfig("www.google.com"); // Mandatory configurations
config.setServer("8.8.8.8"); // Every optional configurations are accessible via setters

DNSLookupTask dnsLookup = new DNSLookupTask(config);
dnsLookup.call(new MeasurementCallback() { // Measurement is processed in an AsyncTask
    // Callback is executed on UI thread
    public void onResult(MeasurementResult result) {
        // ...
    }

    public void onError(MeasurementError error) {
        // ...
     }
});
io.apisense.network

Versions

Version
1.1.2
1.1.1
1.1.0
1.0.0