Anroid的uiautomator实现控件长按的效果

原创 2016年08月30日 15:50:49

经过测试,UiObject的longClick无法实现在android.widget.TextView长按的效果。经过查找资料与实际测试,发现原地swipe可以用来模拟长按,代码如下:

	private boolean LongPress(final MatchSelectUI stMatchSelectUI,int nSeconds)
	{
		boolean bRet = false;
		UiObject stUiObject = new UiObject(stMatchSelectUI.CreateUISelector());
		bRet = stUiObject.exists();
		if(true == bRet)
		{
			bRet = false;
			try 
			{
				//longClick无法实现长按
				//bRet = stUiObject.longClick();
				Rect stRect = stUiObject.getVisibleBounds();
				int nPressX = stRect.centerX();
				int nPressY = stRect.centerY();
				
				//100对应着0.5秒
				int nSecondsSteps = 200;
				int nSteps = nSecondsSteps * nSeconds;
				getUiDevice().swipe(nPressX, nPressY, nPressX, nPressY,nSteps);
				bRet = true;
			}
			catch (UiObjectNotFoundException e) 
			{
				// TODO Auto-generated catch block
				DDMSPrint("UiObject.LongPress() 事件 出现异常 UiObjectNotFoundException");
			}
		}

		return bRet;
	}



Uiautomator中longClick方法时间长度无法调节的解决办法

很早就想分享此问题的解决办法,但总是找不到时间 在Uiautomator测试初期实施中,会遇到方法无法满足的情况,比如较常用的LongClick方法,此方式不太清楚到底多长(看到网上过说...
  • pyn815093235
  • pyn815093235
  • 2015年05月21日 18:41
  • 2193

android UiAutomator长按实现控制按住控件时间的方法

本人在使用UiAutomator做测试的时候,遇到一些控件需要长按一会儿,比如录音功能,需要按住几秒,官方api不太好用,所以自己写了一个长按的方法。分享如下,供大家参考。 public void...
  • Fhaohaizi
  • Fhaohaizi
  • 2017年07月19日 19:12
  • 887

Uiautomator模拟系统物理按键长按操作

最近想模拟长按power键,或者音量键+power键,做一些截图,关机重启的操作。 怎奈在开发文档中找遍UiAutormator的API也没找到一个长按的操作,更不要说同时长按了。 于是在论坛上找...
  • u012897401
  • u012897401
  • 2016年11月24日 12:38
  • 2072

uiautomator使用

最近用到uiautomator和Xposed的东西比较多一些,这篇博客就先对uiautomator进行一些讲解吧,之后可能会跟新一些xposed的东西。毕竟现在一旦涉及到反汇编的东西,那很有可能就会涉...
  • it_xiaozhi
  • it_xiaozhi
  • 2017年01月12日 14:13
  • 6706

Android用代码模拟系统物理按键长按操作(类似按键精灵)

今天同事的朋友提出一个需求,问能不能帮忙写个程序模拟他手机上长按返回键的操作。因为他手机屏幕部分区域失灵,想启用单手模式来使用手机,但是物理触控按键也失灵了。无法通过长按返回触发单手模式。由于之前没做...
  • u012912435
  • u012912435
  • 2016年05月23日 17:27
  • 9927

使用uiautomator做UI测试

转自:http://blog.chengyunfeng.com/?p=504 在Android 4.1发布的时候包含了一种新的测试工具–uiautomator,uiautomat...
  • Sasoritattoo
  • Sasoritattoo
  • 2013年12月26日 11:45
  • 19990

uiautomator模拟长按物理按键

手机测试行业自动化测试中,需要模拟长按操作,但是很多同学只知道长按屏幕界面,但是对于长按物理键(如电源键、音量键、菜单键、home键、返回键、还有其他公司手机自己自定义的键)不知道如何实现,uiaut...
  • bbs11007
  • bbs11007
  • 2017年10月25日 08:36
  • 543

uiautomator中采用longClick()长按界面或按钮

我们都知道有些按钮的东西需要长按才会弹出菜单选项,如删除等
  • bbs11007
  • bbs11007
  • 2017年10月25日 12:40
  • 233

uiautomator 2.0 长按keycode物理按键

private UiDevice mDevice; // 长按物理键 public boolean longPressKeyCode(int keyCode,int PressTime)...
  • sinat_29052561
  • sinat_29052561
  • 2016年12月14日 18:13
  • 1161

Python-uiautomator使用说明文档

本文是基于xiaocong uiautomator项目文件通过机器翻译和个人理解翻译,如有错误还望指出。 原本地址: https://github.com/xiaocong/uiautomator...
  • Eugene_3972
  • Eugene_3972
  • 2017年08月03日 16:02
  • 4319
收藏助手
不良信息举报
您举报文章:Anroid的uiautomator实现控件长按的效果
举报原因:
原因补充:

(最多只允许输入30个字)