当前位置: 首页>>代码示例>>Java>>正文


Java ActivityLifecycleMonitorRegistry类代码示例

本文整理汇总了Java中android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry的典型用法代码示例。如果您正苦于以下问题:Java ActivityLifecycleMonitorRegistry类的具体用法?Java ActivityLifecycleMonitorRegistry怎么用?Java ActivityLifecycleMonitorRegistry使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ActivityLifecycleMonitorRegistry类属于android.support.test.runner.lifecycle包,在下文中一共展示了ActivityLifecycleMonitorRegistry类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getCurrentActivity

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
/**
 * Gets an Activity in the RESUMED stage.
 * <p>
 * This method should never be called from the Main thread. In certain situations there might
 * be more than one Activities in RESUMED stage, but only one is returned.
 * See {@link ActivityLifecycleMonitor}.
 */
public static Activity getCurrentActivity() throws IllegalStateException {
    // The array is just to wrap the Activity and be able to access it from the Runnable.
    final Activity[] resumedActivity = new Activity[1];

    getInstrumentation().runOnMainSync(new Runnable() {
        public void run() {
            Collection resumedActivities = ActivityLifecycleMonitorRegistry.getInstance()
                    .getActivitiesInStage(RESUMED);
            if (resumedActivities.iterator().hasNext()) {
                resumedActivity[0] = (Activity) resumedActivities.iterator().next();
            } else {
                throw new IllegalStateException("No Activity in stage RESUMED");
            }
        }
    });
    return resumedActivity[0];
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:25,代码来源:TestUtils.java

示例2: getCurrentActivity

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
/**
 * Gets an Activity in the RESUMED stage.
 * <p>
 * This method should never be called from the Main thread. In certain situations there might
 * be more than one Activities in RESUMED stage, but only one is returned.
 * See {@link ActivityLifecycleMonitor}.
 */
public static Activity getCurrentActivity()
        throws IllegalStateException {
    // The array is just to wrap the Activity and be able to access it from the Runnable.
    final Activity[] resumedActivity = new Activity[1];

    getInstrumentation().runOnMainSync(new Runnable() {
        public void run() {
            Collection resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(RESUMED);
            if(resumedActivities.iterator().hasNext()) {
                resumedActivity[0] = (Activity) resumedActivities.iterator().next();
            } else {
                throw new IllegalStateException("No Activity in stage RESUMED");
            }
        }
    });
    return resumedActivity[0];
}
 
开发者ID:Zhuinden,项目名称:simple-stack,代码行数:25,代码来源:TestUtils.java

示例3: findAllInStage

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@NonNull
public List<Activity> findAllInStage(final Stage activityStage) {
    final List<Activity> foundActivities = new ArrayList<>();
    Runnable task = new Runnable() {
        @Override
        public void run() {
            foundActivities.addAll(ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(activityStage));
        }
    };

    if (Looper.myLooper() != Looper.getMainLooper()) {
        InstrumentationRegistry.getInstrumentation().runOnMainSync(task);
    } else {
        task.run();
    }
    return foundActivities;
}
 
开发者ID:PGSSoft,项目名称:espresso-doppio,代码行数:18,代码来源:ComponentFinder.java

示例4: perform

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@Override
public void perform(UiController uiController, View view) {
    uiController.loopMainThreadUntilIdle();
    final Activity activity = (Activity) view.getContext();
    activity.setRequestedOrientation(orientation);

    try {
        Thread.sleep(1000);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }

    Collection<Activity> resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);
    if (resumedActivities.isEmpty()) {
        throw new RuntimeException("Could not change orientation");
    }
}
 
开发者ID:sevenli777,项目名称:AppIntro,代码行数:18,代码来源:OrientationChangeAction.java

示例5: loader_manager_is_retained_across_config_changes

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@Test
public void loader_manager_is_retained_across_config_changes() {
    final LoaderManager firstLoaderManager = activityRule.getActivity().fragment.loaderManager;
    final TestActivityWithFragment firstActivity = activityRule.getActivity();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            firstActivity.recreate();
        }
    });
    i.waitForIdleSync();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            TestActivityWithFragment secondActivity = (TestActivityWithFragment) ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED).iterator().next();
            LoaderManager secondLoaderManager = secondActivity.fragment.loaderManager;

            assertNotSame(firstActivity.fragment, secondActivity.fragment);
            assertSame(firstLoaderManager, secondLoaderManager);
        }
    });
}
 
开发者ID:evant,项目名称:loadie,代码行数:23,代码来源:LoaderManagerProviderFragmentTest.java

示例6: loader_manager_is_retained_across_config_changes

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@Test
public void loader_manager_is_retained_across_config_changes() {
    final LoaderManager firstLoaderManager = activityRule.getActivity().loaderManager;
    final Activity firstActivity = activityRule.getActivity();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            firstActivity.recreate();
        }
    });
    i.waitForIdleSync();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            TestActivity secondActivity = (TestActivity) ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED).iterator().next();
            LoaderManager secondLoaderManager = secondActivity.loaderManager;

            assertNotSame(firstActivity, secondActivity);
            assertSame(firstLoaderManager, secondLoaderManager);
        }
    });
}
 
开发者ID:evant,项目名称:loadie,代码行数:23,代码来源:LoaderManagerProviderActivityTest.java

示例7: loader_manager_is_retained_across_config_changes

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@Test
public void loader_manager_is_retained_across_config_changes() {
    final LoaderManager firstLoaderManager = activityRule.getActivity().fragment.fragment.loaderManager;
    final TestActivityWithNestedFragment firstActivity = activityRule.getActivity();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            firstActivity.recreate();
        }
    });
    i.waitForIdleSync();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            TestActivityWithNestedFragment secondActivity = (TestActivityWithNestedFragment) ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED).iterator().next();
            LoaderManager secondLoaderManager = secondActivity.fragment.fragment.loaderManager;

            assertNotSame(firstActivity.fragment.fragment, secondActivity.fragment.fragment);
            assertSame(firstLoaderManager, secondLoaderManager);
        }
    });
}
 
开发者ID:evant,项目名称:loadie,代码行数:23,代码来源:LoaderManagerProviderNestedFragmentTest.java

示例8: loader_manager_is_retained_across_config_changes

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@Test
public void loader_manager_is_retained_across_config_changes() {
    final LoaderManager firstLoaderManager = activityRule.getActivity().controller.loaderManager;
    final Activity firstActivity = activityRule.getActivity();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            firstActivity.recreate();
        }
    });
    i.waitForIdleSync();
    i.runOnMainSync(new Runnable() {
        @Override
        public void run() {
            TestActivity secondActivity = (TestActivity) ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED).iterator().next();
            LoaderManager secondLoaderManager = secondActivity.controller.loaderManager;

            assertNotSame(firstActivity, secondActivity);
            assertSame(firstLoaderManager, secondLoaderManager);
        }
    });
}
 
开发者ID:evant,项目名称:loadie,代码行数:23,代码来源:LoaderManagerProviderControllerTest.java

示例9: startActivitySync

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public Activity startActivitySync(@NonNull Intent intent) {
    ComponentName componentName = intent.getComponent();
    Class<? extends Activity> cls;
    try {
        cls = (Class<? extends Activity>) Class.forName(componentName.getClassName());
    } catch (ClassNotFoundException e) {
        throw new RuntimeException(e);
    }

    Activity activity = Robolectric.setupActivity(cls);
    ActivityLifecycleMonitorRegistry.registerInstance(activityLifecycleMonitor);
    activityLifecycleMonitor.signalLifecycleChange(Stage.CREATED, activity);
    activityLifecycleMonitor.signalLifecycleChange(Stage.STARTED, activity);
    activityLifecycleMonitor.signalLifecycleChange(Stage.RESUMED, activity);
    return activity;
}
 
开发者ID:maskarade,项目名称:Robolectric-Instrumentation,代码行数:19,代码来源:InstrumentationRegistry.java

示例10: getActivityInstance

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
/**
 * Retrieves the on going activity
 * @return Activity - The current activity
 */
private static Activity getActivityInstance(){
    getInstrumentation().runOnMainSync(new Runnable() {
        public void run() {
            Collection resumedActivities = ActivityLifecycleMonitorRegistry.getInstance()
                    .getActivitiesInStage(Stage.RESUMED);
            if (resumedActivities.iterator().hasNext()) {
                mResumedActivity = (Activity) resumedActivities.iterator().next();
            }
            if (resumedActivities.size() <= 0 ){
                mResumedActivity = null;
            }
        }
    });
    return mResumedActivity;
}
 
开发者ID:pylapp,项目名称:SmoothClicker,代码行数:20,代码来源:ItIntroScreensActivity.java

示例11: getCurrentActivity

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
/**
 * Gets an instance of the currently active (displayed) activity.
 * @param activityTestRule test rule
 * @param <T> activity class
 * @return activity instance
 */
public static  <T extends Activity> T getCurrentActivity(@NonNull ActivityTestRule activityTestRule) {
    getInstrumentation().waitForIdleSync();
    final Activity[] activity = new Activity[1];
    try {
        activityTestRule.runOnUiThread(new Runnable() {
            @Override
            public void run() {
                java.util.Collection<Activity> activites = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);
                activity[0] = Iterables.getOnlyElement(activites);
            }});
    } catch (Throwable throwable) {
        throwable.printStackTrace();
    }
    //noinspection unchecked
    return (T) activity[0];
}
 
开发者ID:zawadz88,项目名称:material-activity-chooser,代码行数:23,代码来源:ActivityUtils.java

示例12: takeScreenshot

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
void takeScreenshot(final String path)
{
    InstrumentationRegistry.getInstrumentation().runOnMainSync(new Runnable()
    {
        @Override
        public void run()
        {
            Collection<Activity> resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);
            Iterator<Activity> iterator = resumedActivities.iterator();

            if (iterator.hasNext())
            {
                Activity activity = iterator.next();

                try
                {
                    takeScreenshot(activity, path);
                }
                catch (Exception e)
                {
                    // ignore
                }
            }
        }
    });
}
 
开发者ID:mauriciotogneri,项目名称:green-coffee,代码行数:27,代码来源:ScreenCapture.java

示例13: perform

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@Override
public void perform(UiController uiController, View view) {
    uiController.loopMainThreadUntilIdle();
    final Activity activity = getActivity(view);
    activity.runOnUiThread(new Runnable() {
        @Override
        public void run() {
            activity.setRequestedOrientation(orientation);
        }
    });
    Collection<Activity> resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);
    uiController.loopMainThreadUntilIdle();
    SystemClock.sleep(512);
    if (resumedActivities.isEmpty()) {
        throw new RuntimeException("Could not change orientation");
    }
}
 
开发者ID:seguemodev,项目名称:Meducated-Ninja,代码行数:18,代码来源:OrientationChangeAction.java

示例14: getActivity

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
@Override
public TestActivity getActivity() {
    Runnable runnable = new Runnable() {
        @Override
        public void run() {
            Collection<Activity> activities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);
            if (activities.isEmpty()) {
                mActivity = null;
            } else {
                mActivity = (TestActivity) activities.iterator().next();
            }
        }
    };
    if (Looper.myLooper() == Looper.getMainLooper()) {
        runnable.run();
    } else {
        getInstrumentation().runOnMainSync(runnable);
        getInstrumentation().waitForIdleSync();
    }

    return mActivity == null ? super.getActivity() : mActivity;
}
 
开发者ID:nhaarman,项目名称:Triad,代码行数:23,代码来源:TestActivityInstrumentationTestCase.java

示例15: getDisplayedActivityInstance

import android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry; //导入依赖的package包/类
public Activity getDisplayedActivityInstance() {
	final Activity[] currentActivity = new Activity[1];
	getInstrumentation().runOnMainSync(new Runnable() {
		public void run() {
			Collection<Activity> resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(RESUMED);
			if (resumedActivities.iterator().hasNext()) {
				currentActivity[0] = resumedActivities.iterator().next();
			}
		}
	});

	return currentActivity[0];
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:14,代码来源:PubkeyListActivityTest.java


注:本文中的android.support.test.runner.lifecycle.ActivityLifecycleMonitorRegistry类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。