java - 如何构建android UIAutomator 项目?

标签 java android compilation android-uiautomator

有什么方法可以构建 UiAutomator ( https://android.googlesource.com/platform/frameworks/testing/+/jb-mr2-release/uiautomator/cmds/uiautomator/) 模块吗? UiAutomator 有一个名为 dump 的命令,您可以通过调用 uiautomator dump 在设备/模拟器 shell 上执行该命令,这将生成一个具有 UI 层次结构的 xml 文件。但问题是,如果特殊字符发挥作用(在屏幕上可见),我猜是 UTF-16 字符的笑脸,则 UIAutomator 后面的 xml 生成器失败(这实际上是已知问题),但 IllegalCharacter 除外

https://android.googlesource.com/platform/libcore/+/10d1f630d8df0064ed966193fa8c9d10a96a8321/xml/src/main/java/org/kxml2/io/KXmlSerializer.java 第 130 行

我在 Java 编程方面并没有真正的经验,但我猜我应该能够更新 Java 代码来避免这个问题。 但问题是我真的无法将这个模块编译成 jar 文件。

谁能帮我解决这个问题?

最佳答案

是的,您可能只需要 checkout AOSP 项目并构建此特定模块。方法如下:

  1. Set up your environment (希望您使用的是基于 UNIX 的计算机)
  2. Download AOSP source
  3. Build AOSP

现在,诀窍是将 UiAutomator 构建为框架 (AOSP) 模块。为此,请运行:

make uiautomator

确保您设置了环境变量(source build/envsetup.sh)并事先选择了您的目标和组合(午餐)。

注意:每个 AOSP 模块都包含一个 Android.mk 生成文件,其中指定了模块名称。在您的示例中,我只查看了 Android.mk 并发现了这一点:

LOCAL_MODULE := uiautomator

关于java - 如何构建android UIAutomator 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31753867/

相关文章:

java - SQL Server 2016 : Enable TLS 1. 2 用于 SQL Server 连接

java - Jackson - 在进行转换时如何不忽略 joda.time.DateTime 字段的空值?

java - JAXB - 根标签结束后添加额外字符

java - Jbutton正在不同面板中移动组件

android - 实现从服务器到 Android 来回同步数据的最佳实践(架构级别)

android - 需要在android中每分钟运行一个后台任务

android - 通过音乐流媒体服务中的歌曲进行节拍跟踪

编译没有主要功能的C代码

c++ - 重载运算符+编译错误 '' 没有匹配的函数调用.. .''

c# - C#代码可在Visual Studio 2019中使用,但不能在在线编译器中使用