如您所知,android在android n中提供了Multi-Window support mode。我们的应用程序支持多窗口。
但如何测试呢?如何在该模式下强制测试运行应用程序?我在Instrumentation类或文档中的任何其他地方都没有创建任何这样的方法。也许用浓缩咖啡也可以?

最佳答案

从AA>
启动新活动时,如果可能,可以向系统提示新活动应显示在当前活动的旁边。要执行此操作,请使用intent flag flag_activity_launch_adjacent。
来自Launch New Activities in Multi-Window Mode的文档:
此标志仅在拆分屏幕多窗口模式下使用。新活动将显示在启动它的活动旁边。这只能与标记活动任务一起使用。此外,如果要创建现有活动的新实例,则需要设置标志活动多任务。
Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT如何开始测试活动所示:

@Test
public void customIntentToStartActivity() {
    Intent intent = new Intent(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT)
                | Intent.FLAG_ACTIVITY_NEW_TASK);
    mActivity = mActivityRule.launchActivity(intent);
}

注意,这是我基于文档的猜测,没有尝试过。尽管如此,在我看来,您必须首先启动一个“假”活动,并从那里以多窗口模式启动已测试的活动,因为“新活动将显示在启动它的活动旁边”,所以应该有另一个活动使用指定的Intent标志启动它。

08-03 12:06