zoukankan      html  css  js  c++  java
  • appium-手势密码实现-automationName 是automator2

    上一篇博客已经说了

    appium-手势密码实现-automationName 是Appium的情况

    下面就说一下automator2的情况;

    手势密码的moveTo方法的参数进行了改变。 参数是相对于当前的位置变化。 而不是相对于beginX和beginY变化。

    ta.press(beginX, beginY).moveTo(0, 2*yStep).moveTo(0, 2*yStep).moveTo(2*xStep, 0).release().perform();
    仅改变参数还不行,还需要将
    TouchAction ta = new TouchAction(driver);放在for循环的里面, 即没开始一次手势密码,就new一个新的TouchAction, 否则会报错(坐标超出页面)
    public void setLockPattern(String id, int index) throws Exception {
    		String page = driver.getPageSource();
    		//logger.info("page = " + page);
    		if (page.contains(id)) {//检测是否是有手势密码出现
    			logger.info("检测到有手势密码");
    			/*
    			List<AndroidElement> element = driver.findElements(By.xpath(Constant.XPATH_VIEW + "[contains(@resource-id,'" + id + "')]"));
    			Thread.sleep(1000);//触摸前要等待1秒
    			AndroidElement gelemt = element.get(0);//获取到这个元素把它当做一个对象来做
    			*/
    			AndroidElement gelemt = driver.findElement(By.xpath(Constant.XPATH_VIEW + "[contains(@resource-id,'" + id + "')]"));
    			int startX = gelemt.getLocation().getX();//获取元素的起始点x坐标
    			int startY = gelemt.getLocation().getY();//获取元素的起始点y坐标
    			int height = gelemt.getSize().getHeight();//获取元素的高
    			int width = gelemt.getSize().getWidth();//获取元素的宽
    			int xStep = width / 6;//把宽分成6份
    			int yStep = height / 6;//把高分成6份
    			int beginX = startX + 3*xStep;//计算触摸起始点x坐标
    			int beginY = startY + yStep;//计算触摸点y坐标
    
    			logger.info("开始设置手势密码");
    
    			for(int i = 0; i < index; i++){
    				TouchAction ta = new TouchAction(driver); //初始化TouchAction
    				//appium
    				//ta.press(beginX, beginY).moveTo(0, beginY + 2*yStep).moveTo(0, beginY + 4*yStep).moveTo(beginX + 2*xStep, beginY + 4*yStep).release().perform();
    				// automator2
    				ta.press(beginX, beginY).moveTo(0, 2*yStep).moveTo(0, 2*yStep).moveTo(2*xStep, 0).release().perform();
    
    				sleep(2000);
    			}
    			logger.info("手势密码设置完毕");
    		}
    	}
    

      

  • 相关阅读:
    第一章—v-text和v-html
    第一章—v-for
    第一章—v-show
    react_9
    【软件工程】
    【软件工程】网页设计基础 第一章
    【软件工程】psp四则运算
    【python】网络爬虫与信息提取
    【python】数据库学习笔记,设计自己的大学排名
    【python】用python玩微信跳一跳小游戏
  • 原文地址:https://www.cnblogs.com/leavescy/p/9733023.html
Copyright © 2011-2022 走看看