지정된 시간에 지정된 지점을 길게 클릭하고 싶습니다. 아마 자신의 방법, 뭔가 같은 쓸 수 UiDevice :Android UIAutomator 기기를 오래 클릭하십시오.
private void longClick(int x, int y, long time) {
android.graphics.Point point = new android.graphics.Point(x, y);
android.graphics.Point[] points = new android.graphics.Point[2];
points[0] = point;
points[1] = point;
getUiDevice().swipe(points, time/5); // according to documentation, each step lasts 5ms
}
또는 사용 반사와 longTap 호출 :
private void longClick(int x, int y) {
Field mUiAutomationBridgeField = getUiDevice().getClass().getDeclaredField("mUiAutomationBridge");
mUiAutomationBridgeField.setAccessible(true);
Object mUiAutomationBridge = mUiAutomationBridgeField.get(getUiDevice());
Field mInteractionControllerField = mUiAutomationBridge.getClass().getDeclaredField("mInteractionController");
mInteractionControllerField.setAccessible(true);
Object mInteractionController = mInteractionControllerField.get(mUiAutomationBridge);
Method longTap = mInteractionController.getClass().getDeclaredMethod("longTap", int.class, int.class);
longTap.setAccessible(true);
longTap.invoke(mInteractionController, x, y);
}
그것을 만족 해결책이 아니다 그러나 불행하게도 클래스에 긴 클릭과 같은 방법이 없습니다 , 어떤 생각을 더 잘하는 방법? 왜 그들은 그러한 방법을 놓치고 있습니까?
는 아래의 링크를? –
아래 링크를 클릭하십시오. ? "' –