How to automate the android phone back button using appium

37.4k views Asked by At

I am working on test automation for a hybrid mobile application on Android using Appium(python client library). I haven't been able to figure out any means to automate or create a gesture for using the Phone back button to go back to the previous page of the app. Is there any driver function that can be used? I tried my luck with self.driver.navigate().back() [hoping this would simulate the same behaviour as in Selenium to navigate to the previous URL] but to no avail. Can anyone suggest a way out?

10

There are 10 answers

1
Nitin Shinde On

Use this one it works 100%

driver.pressKeyCode(4);

as "4" is the key note for Back press on Android

0
Sajid Manzoor On

For appium-python-client, to go back you should call this method:

driver.press_keycode(4)

0
farzane On

you use this code for python.

driver.press_keycode(AndroidKeyCode.BACK)
1
Ying Ma On

Yes,try the driver.back(), it simulates the system back function.

0
kklw On

I used a KeyEvent.

import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.nativekey.AndroidKey;

driver.pressKey(new KeyEvent().withKey(AndroidKey.BACK));
1
Kristaps Mežavilks On

I guess maybe it depends on what version of the client library are you using because in Java driver.navigate().back() works well.

1
Santosh Pillai On

driver.sendKeyEvent(AndroidKeyCode.BACK);

does the job in Java

0
moddu saibalaji On

It may be late but useful To click android device back button following line will help you.

helper.driver.pressKeyCode(AndroidKeyCode.BACK);

To click android recent apps button following line will help you.

helper.driver.pressKeyCode(187);
0
RAHUL GUPTA On

By using back(),

self.driver.back()
0
Mukesh otwani On

Recently I was automating one of the Native application where I had to click on back button.

I tried below code and it worked for me.

Code for Android back button.

driver.pressKeyCode(AndroidKeyCode.BACK);

This will click on back button