我正在使用Robotium来测试Android应用程序,并且感兴趣的是如何在测试应用程序启动外部应用程序活动(例如浏览器,相机,脸谱版)时检测情况。有several questions询问如何处理这种情况,但我只需检测,例如只记录时间&# 39; s发生了。这可能是使用Robotium还是简单的仪器?
顺便说一句,当系统应用程序被假冒模拟替换时,我无法使用该解决方案,我甚至不知道将启动什么应用程序(以及何时),因为测试是随机的。 (是的,我知道,这是一个糟糕的方法,但这是一个项目限制)。答案 0 :(得分:0)
请参阅我的回答here。主要思想是检测当前的顶级Activity
,即外部应用程序的Activity
。您可以创建Service
,以监控热门活动。
答案 1 :(得分:0)
另一种方法是检查您的活动何时失去焦点。当它失去焦点时,意味着其他外部活动具有焦点。
http://developer.android.com/reference/android/app/Activity.html#hasWindowFocus()
您可以将Solo.waitForCondition()与hasWindowFocus结合使用。