Added in API level 1

DebugUtils


public class DebugUtils
extends Object

java.lang.Object
   ↳ android.util.DebugUtils


Various utilities for debugging and logging.

Summary

Public methods

static boolean isObjectSelected(Object object)

Filters objects against the ANDROID_OBJECT_FILTER environment variable.

Inherited methods

Object clone()

Creates and returns a copy of this object.

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

final Class<?> getClass()

Returns the runtime class of this Object.

int hashCode()

Returns a hash code value for the object.

final void notify()

Wakes up a single thread that is waiting on this object's monitor.

final void notifyAll()

Wakes up all threads that are waiting on this object's monitor.

String toString()

Returns a string representation of the object.

final void wait(long timeoutMillis, int nanos)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait(long timeoutMillis)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

Public methods

isObjectSelected

Added in API level 1
public static boolean isObjectSelected (Object object)

Filters objects against the ANDROID_OBJECT_FILTER environment variable. This environment variable can filter objects based on their class name and attribute values.

Here is the syntax for ANDROID_OBJECT_FILTER:

ClassName@attribute1=value1@attribute2=value2...

Examples:

  • Select TextView instances: TextView
  • Select TextView instances of text "Loading" and bottom offset of 22: TextView@text=Loading.*@bottom=22

The class name and the values are regular expressions.

This class is useful for debugging and logging purpose:

 if (DEBUG) {
   if (DebugUtils.isObjectSelected(childView) && LOGV_ENABLED) {
     Log.v(TAG, "Object " + childView + " logged!");
   }
 }
 

NOTE: This method is very expensive as it relies heavily on regular expressions and reflection. Calls to this method should always be stripped out of the release binaries and avoided as much as possible in debug mode.

Parameters
object Object: any object to match against the ANDROID_OBJECT_FILTER environement variable

Returns
boolean true if object is selected by the ANDROID_OBJECT_FILTER environment variable, false otherwise