From 2509b664df6a13e6ae9e6753dc9fa0d696a4f6c7 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Tue, 26 May 2015 23:05:11 -0700 Subject: altosdroid: Centralize debug printf code Create AltosDebug to hold the debug code, use it everywhere. Signed-off-by: Keith Packard --- .../src/org/altusmetrum/AltosDroid/AltosDebug.java | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java (limited to 'altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java') diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java new file mode 100644 index 00000000..80f1861b --- /dev/null +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java @@ -0,0 +1,62 @@ +/* + * Copyright © 2015 Keith Packard + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. + */ +package org.altusmetrum.AltosDroid; + +import java.util.Arrays; +import java.io.*; +import java.lang.*; + +import org.altusmetrum.altoslib_7.*; + +import android.app.Activity; +import android.graphics.*; +import android.os.Bundle; +import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentTransaction; +import android.view.*; +import android.widget.*; +import android.location.Location; +import android.content.*; +import android.util.Log; +import android.os.Looper; + +public class AltosDebug { + // Debugging + static final String TAG = "AltosDroid"; + public static final boolean D = true; + + static void info(String format, Object ... arguments) { + Log.i(TAG, String.format(format, arguments)); + } + + static void debug(String format, Object ... arguments) { + if (D) + Log.d(TAG, String.format(format, arguments)); + } + + static void error(String format, Object ... arguments) { + Log.e(TAG, String.format(format, arguments)); + } + + static void check_ui(String format, Object ... arguments) { + if (Looper.myLooper() == Looper.getMainLooper()) { + Log.e(TAG, String.format("ON UI THREAD " + format, arguments)); + for (StackTraceElement el : Thread.currentThread().getStackTrace()) + Log.e(TAG, "\t" + el.toString() + "\n"); + } + } +} -- cgit v1.2.3 From 41028472fd2e7e0209125e76b94e551f9d10f89c Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Thu, 28 May 2015 22:06:55 -0700 Subject: altosdroid: Disable debug output on release builds We generate an awful lot of debug spew to the log; presumably that's not helping performance, so lose that for release builds. Signed-off-by: Keith Packard --- .../src/org/altusmetrum/AltosDroid/AltosDebug.java | 19 +++++++++++++++++-- .../src/org/altusmetrum/AltosDroid/AltosDroid.java | 1 + 2 files changed, 18 insertions(+), 2 deletions(-) (limited to 'altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java') diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java index 80f1861b..cee6e56e 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDebug.java @@ -32,12 +32,27 @@ import android.widget.*; import android.location.Location; import android.content.*; import android.util.Log; -import android.os.Looper; +import android.os.*; +import android.content.pm.*; public class AltosDebug { // Debugging static final String TAG = "AltosDroid"; - public static final boolean D = true; + + static boolean D = true; + + static void init(Context context) { + ApplicationInfo app_info = context.getApplicationInfo(); + + if ((app_info.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0) { + Log.d(TAG, "Enable debugging\n"); + D = true; + } else { + Log.d(TAG, "Disable debugging\n"); + D = false; + } + } + static void info(String format, Object ... arguments) { Log.i(TAG, String.format(format, arguments)); diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java index 97373ab8..6c6566ba 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java @@ -419,6 +419,7 @@ public class AltosDroid extends FragmentActivity implements AltosUnitsListener { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + AltosDebug.init(this); AltosDebug.debug("+++ ON CREATE +++"); fm = getSupportFragmentManager(); -- cgit v1.2.3