improve diagnostics apps
This commit is contained in:
parent
2996fb2078
commit
1ea5281f82
|
@ -42,17 +42,6 @@ public class OrbotDiagnosticsActivity extends Activity {
|
||||||
|
|
||||||
mTextView = (TextView)findViewById(R.id.diaglog);
|
mTextView = (TextView)findViewById(R.id.diaglog);
|
||||||
|
|
||||||
log("Hello, Orbot!");
|
|
||||||
|
|
||||||
log(android.os.Build.DEVICE);
|
|
||||||
log(android.os.Build.HARDWARE);
|
|
||||||
log(android.os.Build.MANUFACTURER);
|
|
||||||
log(android.os.Build.MODEL);
|
|
||||||
log(android.os.Build.VERSION.CODENAME);
|
|
||||||
log(android.os.Build.VERSION.RELEASE);
|
|
||||||
log("freemem: " + Runtime.getRuntime().freeMemory());
|
|
||||||
log("maxmem: " + Runtime.getRuntime().maxMemory());
|
|
||||||
log("storage: " + getFreeStorage());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getFreeStorage ()
|
private String getFreeStorage ()
|
||||||
|
@ -90,18 +79,36 @@ public class OrbotDiagnosticsActivity extends Activity {
|
||||||
protected void onResume() {
|
protected void onResume() {
|
||||||
super.onResume();
|
super.onResume();
|
||||||
|
|
||||||
|
|
||||||
|
log("Hello, Orbot!");
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
log(android.os.Build.DEVICE);
|
||||||
|
log(android.os.Build.HARDWARE);
|
||||||
|
log(android.os.Build.MANUFACTURER);
|
||||||
|
log(android.os.Build.MODEL);
|
||||||
|
log(android.os.Build.VERSION.CODENAME);
|
||||||
|
log(android.os.Build.VERSION.RELEASE);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log("error getting device info");
|
||||||
|
}
|
||||||
|
|
||||||
showFileTree ();
|
showFileTree ();
|
||||||
|
|
||||||
runTorTest();
|
runTorTest();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void killAllTor (File fileTor) throws IOException
|
private void killAllTor (File fileTor) throws IOException
|
||||||
|
{
|
||||||
|
try
|
||||||
{
|
{
|
||||||
int maxTry = 5;
|
int maxTry = 5;
|
||||||
int currTry = 0;
|
int currTry = 0;
|
||||||
|
|
||||||
Shell shell = Shell.startShell();
|
Shell shell = Shell.startShell();
|
||||||
Toolbox tb = new Toolbox(shell);
|
|
||||||
int procId;
|
int procId;
|
||||||
|
|
||||||
while ((procId = TorServiceUtils.findProcessId(fileTor.getAbsolutePath())) != -1 && currTry++ < maxTry)
|
while ((procId = TorServiceUtils.findProcessId(fileTor.getAbsolutePath())) != -1 && currTry++ < maxTry)
|
||||||
|
@ -112,10 +119,21 @@ public class OrbotDiagnosticsActivity extends Activity {
|
||||||
|
|
||||||
SimpleCommand killCommand = new SimpleCommand("toolbox kill -9 " + procId);
|
SimpleCommand killCommand = new SimpleCommand("toolbox kill -9 " + procId);
|
||||||
shell.add(killCommand);
|
shell.add(killCommand);
|
||||||
|
killCommand.waitForFinish();
|
||||||
|
log ("kill output: " + killCommand.getExitCode() + "; " + killCommand.getOutput());
|
||||||
killCommand = new SimpleCommand("kill -9 " + procId);
|
killCommand = new SimpleCommand("kill -9 " + procId);
|
||||||
shell.add(killCommand);
|
shell.add(killCommand);
|
||||||
|
killCommand.waitForFinish();
|
||||||
|
log ("kill output: " + killCommand.getExitCode() + "; " + killCommand.getOutput());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log("error killing Tor: " + e.getLocalizedMessage());
|
||||||
|
Log.d(TAG, "error killing Tor", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
private void runTorTest ()
|
private void runTorTest ()
|
||||||
{
|
{
|
||||||
|
@ -145,17 +163,21 @@ public class OrbotDiagnosticsActivity extends Activity {
|
||||||
log ("Executing command> " + cmd);
|
log ("Executing command> " + cmd);
|
||||||
|
|
||||||
Process process = Runtime.getRuntime().exec(cmd);
|
Process process = Runtime.getRuntime().exec(cmd);
|
||||||
|
|
||||||
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
|
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
|
||||||
StreamGobbler sg = new StreamGobbler();
|
StreamGobbler sg = new StreamGobbler();
|
||||||
sg.reader = bufferedReader;
|
sg.reader = bufferedReader;
|
||||||
sg.process = process;
|
sg.process = process;
|
||||||
new Thread(sg).start();
|
new Thread(sg).start();
|
||||||
|
|
||||||
|
if (process.getErrorStream() != null)
|
||||||
|
{
|
||||||
bufferedReader = new BufferedReader(new InputStreamReader(process.getErrorStream()));
|
bufferedReader = new BufferedReader(new InputStreamReader(process.getErrorStream()));
|
||||||
sg = new StreamGobbler();
|
sg = new StreamGobbler();
|
||||||
sg.reader = bufferedReader;
|
sg.reader = bufferedReader;
|
||||||
sg.process = process;
|
sg.process = process;
|
||||||
new Thread(sg).start();
|
new Thread(sg).start();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -215,14 +237,27 @@ public class OrbotDiagnosticsActivity extends Activity {
|
||||||
{
|
{
|
||||||
|
|
||||||
File fileDir = this.getDir("bin", Context.MODE_PRIVATE);
|
File fileDir = this.getDir("bin", Context.MODE_PRIVATE);
|
||||||
|
|
||||||
|
if (fileDir.exists())
|
||||||
|
{
|
||||||
log("checking file tree: " + fileDir.getAbsolutePath());
|
log("checking file tree: " + fileDir.getAbsolutePath());
|
||||||
printDir (fileDir.getName(), fileDir);
|
printDir (fileDir.getName(), fileDir);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
log("app_bin does not exist");
|
||||||
|
}
|
||||||
|
|
||||||
fileDir = this.getDir("data", Context.MODE_PRIVATE);
|
fileDir = this.getDir("data", Context.MODE_PRIVATE);
|
||||||
|
if (fileDir.exists())
|
||||||
|
{
|
||||||
log("checking file tree: " + fileDir.getAbsolutePath());
|
log("checking file tree: " + fileDir.getAbsolutePath());
|
||||||
printDir (fileDir.getName(), fileDir);
|
printDir (fileDir.getName(), fileDir);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
log ("app_data does not exist");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -231,9 +266,13 @@ public class OrbotDiagnosticsActivity extends Activity {
|
||||||
{
|
{
|
||||||
File[] files = fileDir.listFiles();
|
File[] files = fileDir.listFiles();
|
||||||
|
|
||||||
|
if (files != null && files.length > 0)
|
||||||
|
{
|
||||||
for (File file : files)
|
for (File file : files)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
if (file.isDirectory())
|
if (file.isDirectory())
|
||||||
{
|
{
|
||||||
printDir(path + '/' + file.getName(), file);
|
printDir(path + '/' + file.getName(), file);
|
||||||
|
@ -243,9 +282,15 @@ public class OrbotDiagnosticsActivity extends Activity {
|
||||||
log(path + '/' + file.getName() + " len:" + file.length() + " exec:" + file.canExecute());
|
log(path + '/' + file.getName() + " len:" + file.length() + " exec:" + file.canExecute());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log("problem printing out file information");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Handler mHandler = new Handler ()
|
Handler mHandler = new Handler ()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue