add background measurement
This commit is contained in:
parent
ea40cfba4d
commit
f19c1ae093
|
|
@ -37,7 +37,7 @@
|
||||||
<ConfirmationsSetting value="0" id="Add" />
|
<ConfirmationsSetting value="0" id="Add" />
|
||||||
<ConfirmationsSetting value="0" id="Remove" />
|
<ConfirmationsSetting value="0" id="Remove" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectType">
|
<component name="ProjectType">
|
||||||
|
|
|
||||||
|
|
@ -66,14 +66,6 @@
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
|
||||||
|
|
@ -82,6 +74,14 @@
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,7 @@ class MainActivity extends Activity {
|
||||||
protected static int time_wait_for = 100; // ms
|
protected static int time_wait_for = 100; // ms
|
||||||
protected static int wifiDriverPID = -1;
|
protected static int wifiDriverPID = -1;
|
||||||
// maintained variables
|
// maintained variables
|
||||||
private Button btn_startTransmit, btn_startReceive;
|
private Button btn_startTransmit, btn_startReceive, btn_measureBg;
|
||||||
private Button btn_setByte2send, btn_setRepeatTimes, btn_setTCPDumpInterface,
|
private Button btn_setByte2send, btn_setRepeatTimes, btn_setTCPDumpInterface,
|
||||||
btn_clearStatus, btn_setLogFreq, btn_setOthers;
|
btn_clearStatus, btn_setLogFreq, btn_setOthers;
|
||||||
private WifiManager wm;
|
private WifiManager wm;
|
||||||
|
|
@ -630,6 +630,7 @@ class MainActivity extends Activity {
|
||||||
txt_results = (TextView) findViewById(R.id.txt_results);
|
txt_results = (TextView) findViewById(R.id.txt_results);
|
||||||
btn_startTransmit = (Button) findViewById(R.id.btn_startTransmit);
|
btn_startTransmit = (Button) findViewById(R.id.btn_startTransmit);
|
||||||
btn_startReceive = (Button) findViewById(R.id.btn_startReceive);
|
btn_startReceive = (Button) findViewById(R.id.btn_startReceive);
|
||||||
|
btn_measureBg = (Button) findViewById(R.id.btn_measureBg);
|
||||||
btn_setByte2send = (Button) findViewById(R.id.btn_setByte2send);
|
btn_setByte2send = (Button) findViewById(R.id.btn_setByte2send);
|
||||||
btn_setRepeatTimes = (Button) findViewById(R.id.btn_setRepeatTimes);
|
btn_setRepeatTimes = (Button) findViewById(R.id.btn_setRepeatTimes);
|
||||||
btn_setTCPDumpInterface = (Button) findViewById(R.id.btn_setTCPDumpInterface);
|
btn_setTCPDumpInterface = (Button) findViewById(R.id.btn_setTCPDumpInterface);
|
||||||
|
|
@ -656,6 +657,73 @@ class MainActivity extends Activity {
|
||||||
startRecording(true);
|
startRecording(true);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
btn_measureBg.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
new Thread(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
// msg indicating starting
|
||||||
|
myHandler.post(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
txt_results.append("Starting.. will come back after 1min\n");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
// disable tcpdump
|
||||||
|
boolean isUsingTCPDump_backup = isUsingTCPDump;
|
||||||
|
isUsingTCPDump = false;
|
||||||
|
// change screen brightness to 0
|
||||||
|
Utilities.switchScreenStatus();
|
||||||
|
|
||||||
|
btn_click_time = Long.toString(
|
||||||
|
System.currentTimeMillis());
|
||||||
|
startService(intentSSLogger);
|
||||||
|
try {
|
||||||
|
Thread.sleep(60000); // sleep for 60s
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
stopService(intentSSLogger);
|
||||||
|
myServiceCheck();
|
||||||
|
try {
|
||||||
|
Thread.sleep(1000);
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
// change screen back on
|
||||||
|
Utilities.switchScreenStatus();
|
||||||
|
Runtime.getRuntime().gc();
|
||||||
|
System.gc();
|
||||||
|
String tarName = "bg_measure_"
|
||||||
|
+ (new SimpleDateFormat(
|
||||||
|
"yyyyMMdd_HHmmss", Locale.US)
|
||||||
|
.format(new Date()))
|
||||||
|
+ ".tar.gz";
|
||||||
|
String[] commd = new String[3];
|
||||||
|
commd[0] = "su";
|
||||||
|
commd[1] = "&&";
|
||||||
|
commd[2] = "cd " + outFolderPath
|
||||||
|
+ " && busybox tar -czf "
|
||||||
|
+ tarName + " *.cpu *.cpuRaw *.ss";
|
||||||
|
try {
|
||||||
|
Runtime.getRuntime().exec(commd).waitFor();
|
||||||
|
} catch (InterruptedException | IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
isUsingTCPDump = isUsingTCPDump_backup;
|
||||||
|
// msg indicating all done
|
||||||
|
myHandler.post(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
txt_results.append("Done\n");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}).start();
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
btn_setByte2send.setOnClickListener(new View.OnClickListener() {
|
btn_setByte2send.setOnClickListener(new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
|
|
|
||||||
|
|
@ -345,7 +345,7 @@ class SSLogger extends Service {
|
||||||
* @return string that's been parsed
|
* @return string that's been parsed
|
||||||
*/
|
*/
|
||||||
private static String parseProcPIDStat(String line) {
|
private static String parseProcPIDStat(String line) {
|
||||||
if (line == null) return "-1 -1 -1"; // -1 means it does not exist
|
if (line == null) return "nan nan nan"; // -1 means it does not exist
|
||||||
String[] toks = line.split("\\s+");
|
String[] toks = line.split("\\s+");
|
||||||
long idle = Long.parseLong(toks[15]) + Long.parseLong(toks[16]);
|
long idle = Long.parseLong(toks[15]) + Long.parseLong(toks[16]);
|
||||||
long cpu = Long.parseLong(toks[13]) + Long.parseLong(toks[14]);
|
long cpu = Long.parseLong(toks[13]) + Long.parseLong(toks[14]);
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,8 @@ class Thread_TX_CNormalUDP implements Runnable {
|
||||||
+ (MainActivity.isLocal ? Utilities.myInetIP : MainActivity.remoteIP) + " "
|
+ (MainActivity.isLocal ? Utilities.myInetIP : MainActivity.remoteIP) + " "
|
||||||
+ Utilities.UDP_port + " "
|
+ Utilities.UDP_port + " "
|
||||||
+ ((MainActivity.currentBandwidth < 0) ? "" : String.valueOf(
|
+ ((MainActivity.currentBandwidth < 0) ? "" : String.valueOf(
|
||||||
MainActivity.currentBandwidth));
|
MainActivity.currentBandwidth))
|
||||||
|
+ ((Utilities.udpsendsize == -1) ? "" : String.valueOf(Utilities.udpsendsize));
|
||||||
|
|
||||||
Log.d("TX_NormalUDP", "Start TX Normal UDP");
|
Log.d("TX_NormalUDP", "Start TX Normal UDP");
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@
|
||||||
android:id="@+id/btn_startTransmit"
|
android:id="@+id/btn_startTransmit"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="2"
|
||||||
android:text="@string/btn_begintx"
|
android:text="@string/btn_begintx"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
android:textSize="20dp"
|
android:textSize="20dp"
|
||||||
|
|
@ -32,12 +32,23 @@
|
||||||
android:id="@+id/btn_startReceive"
|
android:id="@+id/btn_startReceive"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="2"
|
||||||
android:text="@string/btn_beginrx"
|
android:text="@string/btn_beginrx"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
android:textSize="20dp"
|
android:textSize="20dp"
|
||||||
android:textColor="#FFFFFF"/>
|
android:textColor="#FFFFFF"/>
|
||||||
|
|
||||||
|
<Button
|
||||||
|
android:theme="@style/theme_btn_bg"
|
||||||
|
android:id="@+id/btn_measureBg"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="Get BG"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textSize="20dp"
|
||||||
|
android:textColor="#FFFFFF"/>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,8 @@
|
||||||
<string name="btn_setuptcpdump">Setup\nTCPDump</string>
|
<string name="btn_setuptcpdump">Setup\nTCPDump</string>
|
||||||
<string name="btn_setothers">Misc.</string>
|
<string name="btn_setothers">Misc.</string>
|
||||||
<string name="btn_clear">Clear</string>
|
<string name="btn_clear">Clear</string>
|
||||||
<string name="btn_beginrx">Begin RX</string>
|
<string name="btn_beginrx">Start RX</string>
|
||||||
<string name="btn_begintx">Begin TX</string>
|
<string name="btn_begintx">Start TX</string>
|
||||||
<string name="warn_root">Not rooted!! Must be rooted!</string>
|
<string name="warn_root">Not rooted!! Must be rooted!</string>
|
||||||
<string name="stat_wifion">WiFi is ON!\n</string>
|
<string name="stat_wifion">WiFi is ON!\n</string>
|
||||||
<string name="stat_wifioff">WiFi is NOT On!\n</string>
|
<string name="stat_wifioff">WiFi is NOT On!\n</string>
|
||||||
|
|
|
||||||
|
|
@ -8,4 +8,7 @@
|
||||||
<style name="theme_btn_rx" parent="android:Theme.Material">
|
<style name="theme_btn_rx" parent="android:Theme.Material">
|
||||||
<item name="android:colorButtonNormal">@color/pink</item>
|
<item name="android:colorButtonNormal">@color/pink</item>
|
||||||
</style>
|
</style>
|
||||||
|
<style name="theme_btn_bg" parent="android:Theme.Material">
|
||||||
|
<item name="android:colorButtonNormal">@color/wallet_holo_blue_light</item>
|
||||||
|
</style>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
@ -66,14 +66,6 @@
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
|
||||||
|
|
@ -82,6 +74,14 @@
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/recyclerview-v7/22.0.0/jars" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/recyclerview-v7/22.0.0/jars" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/22.2.0/jars" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/22.2.0/jars" />
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue