Add SonarDiagnosticActivity to android
Summary: Open the screen by running adb shell am start -n com.facebook.samples.litho/com.facebook.sonar.android.diagnostics.SonarDiagnosticActivity Reviewed By: danielbuechele Differential Revision: D9150556 fbshipit-source-id: 534583cfa5e90af6fd0d2a50572e3763b8888da2
This commit is contained in:
committed by
Facebook Github Bot
parent
d36518d1aa
commit
531a47535b
@@ -24,7 +24,8 @@
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<activity android:name="com.facebook.sonar.android.diagnostics.SonarDiagnosticActivity"
|
||||
android:exported="true"/>
|
||||
</application>
|
||||
|
||||
|
||||
</manifest>
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<application>
|
||||
<activity android:name="com.facebook.sonar.android.diagnostics.SonarDiagnosticActivity"
|
||||
android:exported="true" />
|
||||
</application>
|
||||
</manifest>
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.facebook.sonar.android.diagnostics;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.widget.Toast;
|
||||
import com.facebook.sonar.android.AndroidSonarClient;
|
||||
import com.facebook.sonar.core.SonarClient;
|
||||
import com.facebook.sonar.core.SonarStateUpdateListener;
|
||||
import android.widget.LinearLayout;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
import android.widget.ScrollView;
|
||||
|
||||
public class SonarDiagnosticActivity extends Activity implements SonarStateUpdateListener {
|
||||
|
||||
private TextView textView;
|
||||
private ScrollView scrollView;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
LinearLayout root = new LinearLayout(this);
|
||||
|
||||
textView = new TextView(this);
|
||||
scrollView = new ScrollView(this);
|
||||
scrollView.addView(textView);
|
||||
root.addView(scrollView);
|
||||
|
||||
setContentView(root);
|
||||
}
|
||||
|
||||
protected void onStart() {
|
||||
super.onStart();
|
||||
SonarClient client = AndroidSonarClient.getInstance(this);
|
||||
client.subscribeForUpdates(this);
|
||||
textView.setText(client.getState());
|
||||
}
|
||||
|
||||
protected void onResume() {
|
||||
super.onResume();
|
||||
scrollView.fullScroll(View.FOCUS_DOWN);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUpdate() {
|
||||
final Context context = this;
|
||||
final String state = AndroidSonarClient.getInstance(context).getState();
|
||||
runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
textView.setText(state);
|
||||
scrollView.fullScroll(View.FOCUS_DOWN);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
protected void onStop() {
|
||||
super.onStop();
|
||||
SonarClient client = AndroidSonarClient.getInstance(this);
|
||||
client.unsubscribe();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user