package com.lody.virtual.client.hook.delegate;
import android.annotation.TargetApi;
import android.app.Activity;
import android.app.Application;
import android.app.Instrumentation;
import android.app.UiAutomation;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.ActivityInfo;
import android.os.Build;
import android.os.Bundle;
import android.os.IBinder;
import android.os.PersistableBundle;
import android.view.KeyEvent;
import android.view.MotionEvent;
/**
* @author Lody
*/
public class InstrumentationDelegate extends Instrumentation {
protected Instrumentation base;
public InstrumentationDelegate(Instrumentation base) {
this.base = base;
}
public static Application newApplication(Class<?> clazz, Context context)
throws InstantiationException, IllegalAccessException, ClassNotFoundException {
return Instrumentation.newApplication(clazz, context);
}
@Override
public void onCreate(Bundle arguments) {
base.onCreate(arguments);
}
@Override
public void start() {
base.start();
}
@Override
public void onStart() {
base.onStart();
}
@Override
public boolean onException(Object obj, Throwable e) {
return base.onException(obj, e);
}
@Override
public void sendStatus(int resultCode, Bundle results) {
base.sendStatus(resultCode, results);
}
@Override
public void finish(int resultCode, Bundle results) {
base.finish(resultCode, results);
}
@Override
public void setAutomaticPerformanceSnapshots() {
base.setAutomaticPerformanceSnapshots();
}
@Override
public void startPerformanceSnapshot() {
base.startPerformanceSnapshot();
}
@Override
public void endPerformanceSnapshot() {
base.endPerformanceSnapshot();
}
@Override
public void onDestroy() {
base.onDestroy();
}
@Override
public Context getContext() {
return base.getContext();
}
@Override
public ComponentName getComponentName() {
return base.getComponentName();
}
@Override
public Context getTargetContext() {
return base.getTargetContext();
}
@Override
public boolean isProfiling() {
return base.isProfiling();
}
@Override
public void startProfiling() {
base.startProfiling();
}
@Override
public void stopProfiling() {
base.stopProfiling();
}
@Override
public void setInTouchMode(boolean inTouch) {
base.setInTouchMode(inTouch);
}
@Override
public void waitForIdle(Runnable recipient) {
base.waitForIdle(recipient);
}
@Override
public void waitForIdleSync() {
base.waitForIdleSync();
}
@Override
public void runOnMainSync(Runnable runner) {
base.runOnMainSync(runner);
}
@Override
public Activity startActivitySync(Intent intent) {
return base.startActivitySync(intent);
}
@Override
public void addMonitor(ActivityMonitor monitor) {
base.addMonitor(monitor);
}
@Override
public ActivityMonitor addMonitor(IntentFilter filter, ActivityResult result, boolean block) {
return base.addMonitor(filter, result, block);
}
@Override
public ActivityMonitor addMonitor(String cls, ActivityResult result, boolean block) {
return base.addMonitor(cls, result, block);
}
@Override
public boolean checkMonitorHit(ActivityMonitor monitor, int minHits) {
return base.checkMonitorHit(monitor, minHits);
}
@Override
public Activity waitForMonitor(ActivityMonitor monitor) {
return base.waitForMonitor(monitor);
}
@Override
public Activity waitForMonitorWithTimeout(ActivityMonitor monitor, long timeOut) {
return base.waitForMonitorWithTimeout(monitor, timeOut);
}
@Override
public void removeMonitor(ActivityMonitor monitor) {
base.removeMonitor(monitor);
}
@Override
public boolean invokeMenuActionSync(Activity targetActivity, int id, int flag) {
return base.invokeMenuActionSync(targetActivity, id, flag);
}
@Override
public boolean invokeContextMenuAction(Activity targetActivity, int id, int flag) {
return base.invokeContextMenuAction(targetActivity, id, flag);
}
@Override
public void sendStringSync(String text) {
base.sendStringSync(text);
}
@Override
public void sendKeySync(KeyEvent event) {
base.sendKeySync(event);
}
@Override
public void sendKeyDownUpSync(int key) {
base.sendKeyDownUpSync(key);
}
@Override
public void sendCharacterSync(int keyCode) {
base.sendCharacterSync(keyCode);
}
@Override
public void sendPointerSync(MotionEvent event) {
base.sendPointerSync(event);
}
@Override
public void sendTrackballEventSync(MotionEvent event) {
base.sendTrackballEventSync(event);
}
@Override
public Application newApplication(ClassLoader cl, String className, Context context)
throws InstantiationException, IllegalAccessException, ClassNotFoundException {
return base.newApplication(cl, className, context);
}
@Override
public void callApplicationOnCreate(Application app) {
base.callApplicationOnCreate(app);
}
@Override
public Activity newActivity(Class<?> clazz, Context context, IBinder token, Application application, Intent intent,
ActivityInfo info, CharSequence title, Activity parent, String id, Object lastNonConfigurationInstance)
throws InstantiationException, IllegalAccessException {
return base.newActivity(clazz, context, token, application, intent, info, title, parent, id,
lastNonConfigurationInstance);
}
@Override
public Activity newActivity(ClassLoader cl, String className, Intent intent)
throws InstantiationException, IllegalAccessException, ClassNotFoundException {
return base.newActivity(cl, className, intent);
}
@Override
public void callActivityOnCreate(Activity activity, Bundle icicle) {
base.callActivityOnCreate(activity, icicle);
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void callActivityOnCreate(Activity activity, Bundle icicle, PersistableBundle persistentState) {
base.callActivityOnCreate(activity, icicle, persistentState);
}
@Override
public void callActivityOnDestroy(Activity activity) {
base.callActivityOnDestroy(activity);
}
@Override
public void callActivityOnRestoreInstanceState(Activity activity, Bundle savedInstanceState) {
base.callActivityOnRestoreInstanceState(activity, savedInstanceState);
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void callActivityOnRestoreInstanceState(Activity activity, Bundle savedInstanceState,
PersistableBundle persistentState) {
base.callActivityOnRestoreInstanceState(activity, savedInstanceState, persistentState);
}
@Override
public void callActivityOnPostCreate(Activity activity, Bundle icicle) {
base.callActivityOnPostCreate(activity, icicle);
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void callActivityOnPostCreate(Activity activity, Bundle icicle, PersistableBundle persistentState) {
base.callActivityOnPostCreate(activity, icicle, persistentState);
}
@Override
public void callActivityOnNewIntent(Activity activity, Intent intent) {
base.callActivityOnNewIntent(activity, intent);
}
@Override
public void callActivityOnStart(Activity activity) {
base.callActivityOnStart(activity);
}
@Override
public void callActivityOnRestart(Activity activity) {
base.callActivityOnRestart(activity);
}
@Override
public void callActivityOnResume(Activity activity) {
base.callActivityOnResume(activity);
}
@Override
public void callActivityOnStop(Activity activity) {
base.callActivityOnStop(activity);
}
@Override
public void callActivityOnSaveInstanceState(Activity activity, Bundle outState) {
base.callActivityOnSaveInstanceState(activity, outState);
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void callActivityOnSaveInstanceState(Activity activity, Bundle outState,
PersistableBundle outPersistentState) {
base.callActivityOnSaveInstanceState(activity, outState, outPersistentState);
}
@Override
public void callActivityOnPause(Activity activity) {
base.callActivityOnPause(activity);
}
@Override
public void callActivityOnUserLeaving(Activity activity) {
base.callActivityOnUserLeaving(activity);
}
@Override
public Bundle getAllocCounts() {
return base.getAllocCounts();
}
@Override
public Bundle getBinderCounts() {
return base.getBinderCounts();
}
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
@Override
public UiAutomation getUiAutomation() {
return base.getUiAutomation();
}
}