如何在calabash android中将应用程序带到Foreground



我正在开发一个应用程序,它包含社交共享选项。每当我点击facebook时,它都会在设备中打开带有共享视图的facebook应用程序。

之后,我想把我的申请放在前台。

我试着按下后退按钮,

press_back_button()

它是不成功的。

有什么方法可以在Calabash android中将应用程序带到前台吗

您应该能够通过使用ADB 发送按键和屏幕触摸来实现这一点

adb shell input keyevent KEYCODE_APP_SWITCH打开最近的应用程序菜单adb shell input tap 300 300

会在屏幕上发送一个点击事件,但你必须摆弄坐标才能把它们放在正确的位置。

编辑:我刚刚在手机上尝试了以下命令,可以重新打开最新的应用程序

adb shell input keyevent KEYCODE_APP_SWITCH
adb shell input tap 300 1700

在您的ruby代码上尝试这些命令之前,请查看它们是否在终端(而不是irb(上工作。

第二个命令使用x和y坐标,根据手机屏幕的大小,坐标会有所不同,300 1700适用于我,但你需要尝试一些不同的数字才能使其适用。

要打开第二个最新的应用程序,我认为这是你需要的,我必须运行adb shell input tap 300 700。你需要好好考虑一下,看看什么对你有用。

最终编辑:我找到了一种更好的方法,它不依赖于屏幕分辨率。

adb shell input keyevent KEYCODE_APP_SWITCH

然后找到你的应用程序(你可能需要多次发送这些才能让它工作(

adb shell input keyevent KEYCODE_DPAD_UP

和/或

adb shell input keyevent KEYCODE_DPAD_DOWN

然后选择

adb shell input keyevent KEYCODE_ENTER

您需要运行系统命令,例如。系统("adb shell输入键事件KEYCODE_APP_SWITCH"(这将开启最近的活动。

相关内容

  • 没有找到相关文章

最新更新