当前位置: 首页>>代码示例>>Java>>正文


Java UiDevice.findObject方法代码示例

本文整理汇总了Java中android.support.test.uiautomator.UiDevice.findObject方法的典型用法代码示例。如果您正苦于以下问题:Java UiDevice.findObject方法的具体用法?Java UiDevice.findObject怎么用?Java UiDevice.findObject使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在android.support.test.uiautomator.UiDevice的用法示例。


在下文中一共展示了UiDevice.findObject方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: allowPermissionsIfNeeded

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
public static void allowPermissionsIfNeeded(String permissionNeeded) {
    try {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && !hasNeededPermission(permissionNeeded)) {
            sleep(PERMISSIONS_DIALOG_DELAY);
            UiDevice device = UiDevice.getInstance(getInstrumentation());
            UiObject allowPermissions = device.findObject(new UiSelector()
                    .clickable(true)
                    .checkable(false)
                    .index(GRANT_BUTTON_INDEX));
            if (allowPermissions.exists()) {
                allowPermissions.click();
            }
        }
    } catch (UiObjectNotFoundException e) {
        System.out.println("There is no permissions dialog to interact with");
    }
}
 
开发者ID:cuplv,项目名称:ChimpCheck,代码行数:18,代码来源:PermissionGranter.java

示例2: openAppTest

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
@Test
public void openAppTest() throws Exception {
    UiDevice mDevice = UiDevice.getInstance(getInstrumentation());
    mDevice.pressHome();
    // Bring up the default launcher by searching for a UI component
    // that matches the content description for the launcher button.
    UiObject allAppsButton = mDevice
            .findObject(new UiSelector().description("Apps"));

    // Perform a click on the button to load the launcher.
    allAppsButton.clickAndWaitForNewWindow();
    // Context of the app under test.
    Context appContext = InstrumentationRegistry.getTargetContext();

    assertEquals("com.wbrawner.simplemarkdown", appContext.getPackageName());
    UiScrollable appView = new UiScrollable(new UiSelector().scrollable(true));
    UiSelector simpleMarkdownSelector = new UiSelector().text("Simple Markdown");
    appView.scrollIntoView(simpleMarkdownSelector);
    mDevice.findObject(simpleMarkdownSelector).clickAndWaitForNewWindow();
}
 
开发者ID:wbrawner,项目名称:SimpleMarkdown,代码行数:21,代码来源:MainActivityTests.java

示例3: allowLocationPermissionWhenAsked

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
/**
 * Allows location permission if the runtime permission dialog is shown.
 */
public static void allowLocationPermissionWhenAsked()
{
    try
    {
        if (!PermissionUtils.isLocationGranted(InstrumentationRegistry.getTargetContext()))
        {
            TestHelper.sleep(PERMISSIONS_DIALOG_DELAY);

            final UiDevice device = UiDevice.getInstance(getInstrumentation());
            final UiObject allowPermissions = device.findObject(new UiSelector()
                                                                        .clickable(true)
                                                                        .checkable(false)
                                                                        .index(GRANT_BUTTON_INDEX));
            if (allowPermissions.exists())
            {
                allowPermissions.click();
            }
        }
    }
    catch (final UiObjectNotFoundException e)
    {
        Log.e(PermissionTestHelper.class.getSimpleName(), "There is no permissions dialog to interact with.");
    }
}
 
开发者ID:inthepocket,项目名称:ibeacon-scanner-android,代码行数:28,代码来源:PermissionTestHelper.java

示例4: viewExistsContains

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
public static boolean viewExistsContains(UiDevice device, String... textToMatch) throws UiObjectNotFoundException
{
    if (textToMatch == null || textToMatch.length < 1)
    {
        return false;
    }
    UiObject view;
    boolean contains = false;
    for (int i = 0; i < textToMatch.length; i++)
    {
        view = device.findObject(new UiSelector().textContains(textToMatch[i]));
        contains = view.exists();
        if (contains) return true;
    }
    return false;
}
 
开发者ID:AsteroidOS,项目名称:AsteroidOSSync,代码行数:17,代码来源:UIUtil.java

示例5: testUiAutomatorAPI

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
@Ignore
@Test
public void testUiAutomatorAPI() throws UiObjectNotFoundException, InterruptedException {
    UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());

    UiSelector editTextSelector = new UiSelector().className("android.widget.EditText").text("this is a test").focusable(true);
    UiObject editTextWidget = device.findObject(editTextSelector);
    editTextWidget.setText("this is new text");

    Thread.sleep(2000);

    UiSelector buttonSelector = new UiSelector().className("android.widget.Button").text("CLICK ME").clickable(true);
    UiObject buttonWidget = device.findObject(buttonSelector);
    buttonWidget.click();

    Thread.sleep(2000);
}
 
开发者ID:ravidsrk,项目名称:android-testing-guide,代码行数:18,代码来源:MainActivityTest.java

示例6: testA

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
/**
 * 测试CollapsingToolbarLayout
 * 被测Demo下载地址:https://github.com/alidili/DesignSupportDemo
 *
 * @throws UiObjectNotFoundException
 */
public void testA() throws UiObjectNotFoundException {
    // 获取设备对象
    Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
    UiDevice uiDevice = UiDevice.getInstance(instrumentation);
    // 获取上下文
    Context context = instrumentation.getContext();

    // 启动测试App
    Intent intent = context.getPackageManager().getLaunchIntentForPackage("com.yang.designsupportdemo");
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
    context.startActivity(intent);

    // 打开CollapsingToolbarLayout
    String resourceId = "com.yang.designsupportdemo:id/CollapsingToolbarLayout";
    UiObject collapsingToolbarLayout = uiDevice.findObject(new UiSelector().resourceId(resourceId));
    collapsingToolbarLayout.click();

    for (int i = 0; i < 5; i++) {
        // 向上移动
        uiDevice.swipe(uiDevice.getDisplayHeight() / 2, uiDevice.getDisplayHeight(),
                uiDevice.getDisplayHeight() / 2, uiDevice.getDisplayHeight() / 2, 10);

        // 向下移动
        uiDevice.swipe(uiDevice.getDisplayHeight() / 2, uiDevice.getDisplayHeight() / 2,
                uiDevice.getDisplayHeight() / 2, uiDevice.getDisplayHeight(), 10);
    }

    // 点击应用返回按钮
    UiObject back = uiDevice.findObject(new UiSelector().description("Navigate up"));
    back.click();

    // 点击设备返回按钮
    uiDevice.pressBack();
}
 
开发者ID:alidili,项目名称:Demos,代码行数:41,代码来源:UiTest.java

示例7: testB

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
/**
 * 滑动界面,打开About phone选项
 * 测试环境为标准Android 7.1.1版本,不同设备控件查找方式会有不同
 *
 * @throws UiObjectNotFoundException
 */
public void testB() throws UiObjectNotFoundException {
    // 获取设备对象
    Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
    UiDevice uiDevice = UiDevice.getInstance(instrumentation);
    // 获取上下文
    Context context = instrumentation.getContext();

    // 点击Settings按钮
    UiObject uiObject = uiDevice.findObject(new UiSelector().description("Settings"));
    uiObject.click();

    // 滑动列表到最后,点击About phone选项
    UiScrollable settings = new UiScrollable(new UiSelector().className("android.support.v7.widget.RecyclerView"));
    UiObject about = settings.getChildByText(new UiSelector().className("android.widget.LinearLayout"), "About phone");
    about.click();

    // 点击设备返回按钮
    uiDevice.pressBack();
    uiDevice.pressBack();
}
 
开发者ID:alidili,项目名称:Demos,代码行数:27,代码来源:UiTest.java

示例8: takeCameraPhoto

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
private static void takeCameraPhoto() throws UiObjectNotFoundException {
    UiDevice device = UiDevice.getInstance(getInstrumentation());
    UiSelector shutterSelector =
            new UiSelector().resourceId("com.android.camera:id/shutter_button");
    UiObject shutterButton = device.findObject(shutterSelector);
    shutterButton.click();

    UiSelector doneSelector = new UiSelector().resourceId("com.android.camera:id/btn_done");
    UiObject doneButton = device.findObject(doneSelector);
    doneButton.click();
}
 
开发者ID:ArnauBlanch,项目名称:civify-app,代码行数:12,代码来源:CreateIssueActivityTest.java

示例9: skipPermission

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
public void skipPermission(JSONArray permissionPatterns, int scanningCount) {
    UiDevice mDevice = Elements.getGlobal().getmDevice();

    // if permission list is empty, avoid execution
    if (permissionPatterns.size() == 0) {
        return;
    }

    // regular check for permission scanning
    try {
        for (int i = 0; i < scanningCount; i++) {
            inner:
            for (int j = 0; j < permissionPatterns.size(); j++) {
                String text = permissionPatterns.getString(j);
                UiObject object = mDevice.findObject(new UiSelector().text(text));
                if (object.exists()) {
                    object.click();
                    break inner;
                }
            }

            Thread.sleep(3000);
        }
    } catch (Exception e) {
        System.out.println(e.getMessage());
        System.out.println(e.getCause().toString());
    }
}
 
开发者ID:macacajs,项目名称:UIAutomatorWD,代码行数:29,代码来源:UIAutomatorWD.java

示例10: denyPermissionsIfNeeded

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
public void denyPermissionsIfNeeded(Activity activity, String permissionNeeded) {
  try {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && !hasNeededPermission(activity, permissionNeeded)) {
      waitInMillis(PERMISSIONS_DIALOG_DELAY);
      UiDevice device = UiDevice.getInstance(getInstrumentation());
      UiObject denyPermissions = device.findObject(new UiSelector().clickable(true).index(DENY_BUTTON_INDEX));
      if (denyPermissions.exists()) {
        denyPermissions.click();
      }
    }
  } catch (UiObjectNotFoundException e) {
    logNoPermissionDialogError();
  }
}
 
开发者ID:SchibstedSpain,项目名称:Leku,代码行数:15,代码来源:PermissionGranter.java

示例11: clickButton

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
/**
 * Clicks a button with the given text. This will try to find the widget exactly as the text is given, and
 * will try upper casing the text if it is not found.
 */
public static void clickButton(UiDevice device, String buttonText) throws UiObjectNotFoundException
{
    UiObject accept = device.findObject(new UiSelector().text(buttonText));
    if (accept.exists())
    {
        accept.click();
        return;
    }
    accept = device.findObject(new UiSelector().text(buttonText.toUpperCase()));
    accept.click();
}
 
开发者ID:AsteroidOS,项目名称:AsteroidOSSync,代码行数:16,代码来源:UIUtil.java

示例12: assertViewWithTextIsVisible

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
private void assertViewWithTextIsVisible(UiDevice device, String text) throws UiObjectNotFoundException {
    UiObject allowButton = device.findObject(new UiSelector().text(text));
    if (!allowButton.exists()) {
        throw new AssertionError("View with text <" + text + "> not found!");
    }
    allowButton.click();
}
 
开发者ID:taehwandev,项目名称:Android-BlogExample,代码行数:8,代码来源:MainFragmentExtendTest.java

示例13: click

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
protected void click(String targetId) {
    UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
    UiObject button = device.findObject(new UiSelector().resourceId(targetId));

    try {
        button.waitForExists(3000);
        button.click();
    } catch (UiObjectNotFoundException e) {
        throw new IllegalStateException(e);
    }
}
 
开发者ID:nenick,项目名称:espresso-macchiato,代码行数:12,代码来源:EspPermissionDialog.java

示例14: allowPermissionsIfNeeded

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
public static void allowPermissionsIfNeeded(UiDevice device) {
    if (Build.VERSION.SDK_INT >= 23) {
        UiObject allowPermissions = device.findObject(new UiSelector().text(TEXT_ALLOW));

        if (allowPermissions.exists()) {
            try {
                allowPermissions.click();
            } catch (UiObjectNotFoundException ignored) {
            }
        }
    }
}
 
开发者ID:Plastix,项目名称:Forage,代码行数:13,代码来源:UiAutomatorUtils.java

示例15: allowPermissionsIfNeeded

import android.support.test.uiautomator.UiDevice; //导入方法依赖的package包/类
protected void allowPermissionsIfNeeded() {
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    UiDevice device = UiDevice.getInstance(getInstrumentation());
    UiObject allowPermissions = device.findObject(new UiSelector().clickable(true).index(1));
    if (allowPermissions.exists()) {
      try {
        allowPermissions.click();
      } catch (UiObjectNotFoundException e) {
        Timber.e(e, "There is no permissions dialog to interact with ");
      }
    }
  }
}
 
开发者ID:xmartlabs,项目名称:bigbang,代码行数:14,代码来源:SingleActivityInstrumentationTest.java


注:本文中的android.support.test.uiautomator.UiDevice.findObject方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。