在android的uiautomator.jar中存根的方法

Posted

技术标签:

【中文标题】在android的uiautomator.jar中存根的方法【英文标题】:Methods stubbed out in uiautomator.jar in android 【发布时间】:2014-05-08 18:12:58 【问题描述】:

我在我的项目中使用uiautomator API。我发现uiautomator.jar 具有存根 API,而它们的实现存在于 sdk 文件夹下的 sources 中。

public static UiDevice getInstance()

    throw new RuntimeException("Stub!");

我现在该怎么办?

【问题讨论】:

你为什么关心getInstance()是否被存根? 我想调用 UiDevice 方法 dumpWindowHierarchy(String fileName)。由于 UiDevice 是一个单例类,我需要调用 getInstance()。 【参考方案1】:

由于 UiDevice 是一个单例类,我需要调用 getInstance()

在your UiAutomatorTestCase 上致电getUiDevice() 以获取您的UiDevice 实例。

【讨论】:

刚刚检查:UiAutomatorTestCase 方法 getUiDevice() 也被删除了。 @Aashish:不在设备上。所有uiautomator.jar 都是为了满足编译器,就像android.jar 文件用于构建您的APK 一样。 我的要求是在应用程序中实现代码,这将转储应用程序的视图层次结构。我做得对吗?你有什么建议? @Aashish:欢迎您转储自己活动的视图层次结构,方法是转到根视图并递归遍历子树。这不需要 uiautomator 框架中的任何内容。 我通过 adb 使用了“uiautomator dump”。它在文件中转储了很多信息,我无法通过遍历视图树来获取这些信息。如果活动的视图组填充在本机端怎么办?如果我可以在我的代码中使用 dumpViewHeirarchy,我将不胜感激。有办法吗?

以上是关于在android的uiautomator.jar中存根的方法的主要内容,如果未能解决你的问题,请参考以下文章

Android - 在 Android 1.6 中开发的应用程序可以在 Android 2.0 中运行吗?

如何在Android中启动JAVA程序

在 Android 4 中启用 android:largeHeap,在 Android 2.3 中禁用它

android中怎么设置组件在LinearLayout中居中

在android中怎样让按钮漂浮在图片上?

在 Android 12 中使用 WorkManager