internal static int StartActivity (IApplicationThread whoThread, Intent intent, string type, Activity target, int requestCode) { var component = intent.getComponent (); if (component == null) return IActivityManagerClass.START_CLASS_NOT_FOUND; var info = package_manager.getActivityInfo (component, 0); if (info == null) return IActivityManagerClass.START_CLASS_NOT_FOUND; ActivityThread thread = new ActivityThread (); Activity activity = thread.startActivityNow ( main_activity, null, intent, info, null, null, null); if (activity == null) return IActivityManagerClass.START_NOT_ACTIVITY; ThreadPool.QueueUserWorkItem ((state) => StartActivity (activity)); return IActivityManagerClass.START_SUCCESS; }