Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

driver.lockScreen() not working as expected. #315

Closed
namannigam-zz opened this issue Feb 7, 2016 · 5 comments
Closed

driver.lockScreen() not working as expected. #315

namannigam-zz opened this issue Feb 7, 2016 · 5 comments
Labels

Comments

@namannigam-zz
Copy link

Quoting from SO-35223434-
We have called driver.lockScreen(20); in my test followed by Runtime.getRuntime().exec("adb shell input keyevent 26"); to unlock screen. But the problem is the device is not getting locked for 20 sec. The next statement keyevent 26 is unlocking the device as soon as device is locked. So why we are providing 20 sec parameter?
Looking further into this, the AppiumDriver.java has this to say :
/** * Lock the device (bring it to the lock screen) for a given number of * seconds * * @param seconds * number of seconds to lock the screen for */ public void lockScreen(int seconds) { execute(LOCK, ImmutableMap.of("seconds", seconds)); }

@TikhomirovSergey
Copy link
Contributor

I will try to reproduce. But it can be the server-side problem.

@TikhomirovSergey
Copy link
Contributor

It is the server side problem.
appium/appium#6077

@namannigam-zz
Copy link
Author

@TikhomirovSergey there's definitely some issue with the lockScreen() but just to clear the appium/appium#6077 depicts that the screen remains locked. While in our case the screen does not remain lock for the specified sleep time.

@TikhomirovSergey
Copy link
Contributor

While in our case the screen does not remain lock for the specified sleep time.

I'm searching for the cause of this problem. It is already reported probably. I've asked the question at team chat.

@imurchie
Copy link
Contributor

imurchie commented Feb 9, 2016

Talking this over, this appears to be the desired behavior. The locking-waiting-unlocking is necessary for iOS, where it is the only way to do any locking. For Android it should just lock. If you want it to unlock, you can call unlock.

I am making the seconds parameter optional, and documenting this difference.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants