1 package net.osdn.gokigen.cameratest.logcat;
3 import android.app.Activity;
4 import android.content.Intent;
5 import android.util.Log;
6 import android.view.View;
7 import android.widget.AdapterView;
8 import android.widget.ArrayAdapter;
10 import androidx.annotation.NonNull;
12 import net.osdn.gokigen.cameratest.ConfirmationDialog;
13 import net.osdn.gokigen.cameratest.R;
15 class LogCatExporter implements AdapterView.OnItemLongClickListener
17 private final String TAG = toString();
18 private final Activity activity;
20 LogCatExporter(@NonNull Activity context)
22 this.activity = context;
27 public boolean onItemLongClick(final AdapterView<?> adapterView, View view, int i, long l)
29 Log.v(TAG, "onItemLongClick()" );
31 ConfirmationDialog confirm = ConfirmationDialog.newInstance(activity);
33 confirm.show(R.string.dialog_confirm_title_output_log, R.string.dialog_confirm_message_output_log, new ConfirmationDialog.Callback() {
37 Log.v(TAG, "confirm()" );
39 StringBuilder buf = new StringBuilder();
40 ArrayAdapter<String> adapter = (ArrayAdapter<String>) adapterView.getAdapter();
41 for (int index = 0; index < adapter.getCount(); index++)
43 buf.append(adapter.getItem(index));
47 Intent intent = new Intent();
48 intent.setAction(Intent.ACTION_SEND);
49 intent.setType("text/plain");
50 intent.putExtra(Intent.EXTRA_TITLE, "debug log for " + activity.getString(R.string.app_name));
51 intent.putExtra(Intent.EXTRA_TEXT, new String(buf));
52 activity.startActivity(intent);
54 // Toast.makeText(activity, adapter.getItem(adapter.getCount() - 1), Toast.LENGTH_SHORT).show();