使用UiAutomator中swipe(Point[], int)方法绘制解锁图案

本文介绍了如何利用Android的UiAutomator库中的swipe方法,通过指定一系列点来绘制解锁图案。通过从数组中的一个点滑动到下一个点,连续执行,形成解锁轨迹。每个滑动动作包含一定的步骤数segmentSteps。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

swipe(Point[] segments, int segmentSteps)

实现的方法,从point数组中的第一个点滑动到第二个点,第二个点滑动到第三个点,依次滑动,形成一条条折线,每条直线所有步伐segmentSteps

例如:
这里写图片描述

package com.vv7;

import junit.framework.Assert;

import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

import android.graphics.Point;
import android.os.RemoteException;

public class UnlockCase extends UiAutomatorTestCase {

    public void testUnlockCase() throws RemoteException,
            UiObjectNotFoundException {
        if (getUiDevice().isScreenOn()) {
            getUiDevice().sleep();
        }
        getUiDevice().wakeUp();// 唤醒屏幕
        // 向上滑动,调出图案解锁面板
        getUiDevice().swipe(540, 1576, 540, 676, 10);
        sleep(3000);
        //绘制解锁图案
        Point p1 = new Point();
        Point p2 = new Point();
        Point p3 = new Point();
        Point p4 = new Point();
        Point p5 = new Point();
        p1.x = 215;p1.y = 872;
        p2.x = 545;p2.y = 872;
        p3.x = 545;p3.y = 1202;
        p4.x = 545;p4.y = 1532;
        p5.x = 875;p5.y = 1532;
        Point[] p = { p1, p2, p3, p4, p5 };
        getUiDevice().swipe(p, 40);
        sleep(3000);
        getUiDevice().pressHome();
        UiObject extDateWidget = new UiObject(
                new UiSelector()
                        .resourceId("com.android.deskclock:id/imageview"));
        Assert.assertEquals("日期", extDateWidget.getContentDescription());

    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值