2013-03-06 7 views
1

uiautomator 테스트에서 멀티 터치 동작을 자동화하는 방법을 찾지 못했습니다.튜어에서 멀티 터치를 사용하려면 어떻게해야합니까?

com.android.uiautomator. * 클래스의 프레임 워크에서 멀티 터치 동작을 자동화하려면 어떻게해야합니까?

+0

그것은 injectInputEvent. 보이는()와 MotionEvent.obtain는() 인프라의이 종류를 만들 수 있습니다. 나는 그것을 자동으로 할 방법을 찾지 못했고, 나는 아래의 답을 받아 들일 것이다. – Shellum

+2

안드로이드 API 레벨 18 이후 업데이트 된 문서를 읽어보십시오 http://developer.android.com/tools/help/uiautomator/UiObject.html 내가 performMultiPointerGesture 기능이 답해야한다고 생각합니다. – shijunz

답변

1

업데이트 2017년 3월 1일 내가 처음이 질문에 안드로이드 (17) 예를 들어, 현재 문서 대답 http://developer.android.com/tools/help/uiautomator/UiObject.html은 꼬집음과 같은 멀티 터치 또는 기타 복잡한 제스처를 제공하는 방법을 제공하지 않는 것 같습니다 & 줌.

그러나 @Project가 지적한대로 이제는 멀티 터치 제스처가 지원됩니다. https://developer.android.com/reference/android/support/test/uiautomator/UiObject.html#performMultiPointerGesture(android.view.MotionEvent.PointerCoords[]...)

나는이 단계에서,이 기능을 테스트하지 않았습니다. 로이드 API 레벨

+0

답장을 +1 하겠지만 받아들이 기 전에 좀 더 기다려야합니다. :) – Shellum

+0

필요한만큼 기다려주세요 :) Google이 기능을 제공하여 Google에 잘못된 점을 알려주기를 바랍니다! – JulianHarty

+0

이 답변은 더 이상 정확하지 않습니다. 수락 된 답변이기 때문에 업데이트 제안 – Project

2

18 로이드에서 UIObject는 멀티 제스처에 대한 API를 제공 갖는다. check here

0

pinchOut/pinchIn 메서드를 사용하여 축소 및 확대 할 수 있습니다. 또는 더 세밀하게 제어하려는 경우 JulianHarty가 지적한대로 멀티 터치 제스처를 사용할 수 있습니다.

UiDevice 장치 UiDevice.getInstance = (InstrumentationRegistry.getInstrumentation()); device.findObject (uiSelector) .pinchOut (percent, steps); 당신이 InputManager.getInstance()의 조합을 사용할 수 있습니다처럼