public class

Instrumentation

extends Object
java.lang.Object
  ↳ android.app.Instrumentation
Known Direct Subclasses

Class Overview


Base class for implementing application instrumentation code. When running with instrumentation turned on, this class will be instantiated for you before any of the application code, allowing you to monitor all of the interaction the system has with the application. An Instrumentation implementation is described to the system through an AndroidManifest.xml's tag.

Summary


Nested Classes
class Instrumentation.ActivityMonitor Information about a particular kind of Intent that is being monitored.








class Instrumentation.ActivityResult Description of a Activity execution result to return to the original activity.








Constants
String REPORT_KEY_IDENTIFIER If included in the status or final bundle sent to an IInstrumentationWatcher, this key identifies the class that is writing the report.








String REPORT_KEY_STREAMRESULT If included in the status or final bundle sent to an IInstrumentationWatcher, this key identifies a string which can simply be printed to the output stream.








Public Constructors

Instrumentation()









Public Methods
Instrumentation.ActivityMonitor addMonitor(IntentFilter filter, Instrumentation.ActivityResult result, boolean block)
A convenience wrapper for addMonitor(ActivityMonitor) that creates an intent filter matching Instrumentation.ActivityMonitor for you and returns it.










void addMonitor(Instrumentation.ActivityMonitor monitor)
Add a new Instrumentation.ActivityMonitor that will be checked whenever an activity is started.










Instrumentation.ActivityMonitor addMonitor(String cls, Instrumentation.ActivityResult result, boolean block)
A convenience wrapper for addMonitor(ActivityMonitor) that creates a class matching Instrumentation.ActivityMonitor for you and returns it.










void callActivityOnCreate(Activity activity, Bundle icicle)
Perform calling of an activity's onCreate(Bundle) method.










void callActivityOnDestroy(Activity activity)









void callActivityOnNewIntent(Activity activity, Intent intent)
Perform calling of an activity's onNewIntent(Intent) method.










void callActivityOnPause(Activity activity)
Perform calling of an activity's onPause() method.










void callActivityOnPostCreate(Activity activity, Bundle icicle)
Perform calling of an activity's onPostCreate(Bundle) method.










void callActivityOnRestart(Activity activity)
Perform calling of an activity's onRestart() method.










void callActivityOnRestoreInstanceState(Activity activity, Bundle savedInstanceState)
Perform calling of an activity's onRestoreInstanceState(Bundle) method.










void callActivityOnResume(Activity activity)
Perform calling of an activity's onResume() method.










void callActivityOnSaveInstanceState(Activity activity, Bundle outState)
Perform calling of an activity's onPause() method.










void callActivityOnStart(Activity activity)
Perform calling of an activity's onStart() method.










void callActivityOnStop(Activity activity)
Perform calling of an activity's onStop() method.










void callActivityOnUserLeaving(Activity activity)
Perform calling of an activity's onUserLeaveHint() method.










void callApplicationOnCreate(Application app)
Perform calling of the application's onCreate() method.










boolean checkMonitorHit(Instrumentation.ActivityMonitor monitor, int minHits)
Test whether an existing Instrumentation.ActivityMonitor has been hit.










void endPerformanceSnapshot()









void finish(int resultCode, Bundle results)
Terminate instrumentation of the application.










Bundle getAllocCounts()
Returns a bundle with the current results from the allocation counting.










Bundle getBinderCounts()
Returns a bundle with the counts for various binder counts for this process.










ComponentName getComponentName()
Returns complete component name of this instrumentation.










Context getContext()
Return the Context of this instrumentation's package.










Context getTargetContext()
Return a Context for the target application being instrumented.










boolean invokeContextMenuAction(Activity targetActivity, int id, int flag)
Show the context menu for the currently focused view and executes a particular context menu item.










boolean invokeMenuActionSync(Activity targetActivity, int id, int flag)
Execute a particular menu item.










boolean isProfiling()
Check whether this instrumentation was started with profiling enabled.










Activity newActivity(ClassLoader cl, String className, Intent intent)
Perform instantiation of the process's Activity object.










Activity newActivity(Class clazz, Context context, IBinder token, Application application, Intent intent, ActivityInfo info, CharSequence title, Activity parent, String id, Object lastNonConfigurationInstance)
Perform instantiation of an Activity object.










Application newApplication(ClassLoader cl, String className, Context context)
Perform instantiation of the process's Application object.










static Application newApplication(Class clazz, Context context)
Perform instantiation of the process's Application object.










void onCreate(Bundle arguments)
Called when the instrumentation is starting, before any application code has been loaded.










void onDestroy()
Called when the instrumented application is stopping, after all of the normal application cleanup has occurred.










boolean onException(Object obj, Throwable e)
This is called whenever the system captures an unhandled exception that was thrown by the application.










void onStart()
Method where the instrumentation thread enters execution.










void removeMonitor(Instrumentation.ActivityMonitor monitor)
Remove an Instrumentation.ActivityMonitor that was previously added with addMonitor(Instrumentation.ActivityMonitor).










void runOnMainSync(Runnable runner)
Execute a call on the application's main thread, blocking until it is complete.










void sendCharacterSync(int keyCode)
Higher-level method for sending both the down and up key events for a particular character key code.










void sendKeyDownUpSync(int key)
Sends an up and down key event sync to the currently focused window.










void sendKeySync(KeyEvent event)
Send a key event to the currently focused window/view and wait for it to be processed.










void sendPointerSync(MotionEvent event)
Dispatch a pointer event.










void sendStatus(int resultCode, Bundle results)
Provide a status report about the application.










void sendStringSync(String text)
Sends the key events corresponding to the text to the app being instrumented.










void sendTrackballEventSync(MotionEvent event)
Dispatch a trackball event.










void setAutomaticPerformanceSnapshots()









void setInTouchMode(boolean inTouch)
Force the global system in or out of touch mode.










void start()
Create and start a new thread in which to run instrumentation.










Activity startActivitySync(Intent intent)
Start a new activity and wait for it to begin running before returning.










void startAllocCounting()









void startPerformanceSnapshot()









void startProfiling()
This method will start profiling if isProfiling() returns true.










void stopAllocCounting()









void stopProfiling()
Stops profiling if isProfiling() returns true.










void waitForIdle(Runnable recipient)
Schedule a callback for when the application's main thread goes idle (has no more events to process).










void waitForIdleSync()
Synchronously wait for the application to be idle.










Activity waitForMonitor(Instrumentation.ActivityMonitor monitor)
Wait for an existing Instrumentation.ActivityMonitor to be hit.










Activity waitForMonitorWithTimeout(Instrumentation.ActivityMonitor monitor, long timeOut)
Wait for an existing Instrumentation.ActivityMonitor to be hit till the timeout expires.