使用 Android Studio¶
Android Studio 是基于 IntelliJ 的 Android 应用程序开发集成开发环境 ( IDE )。它可以编译代码,然后将代码安装到机器人控制器上:控制中心或合法的安卓手机。
下载 Android Studio¶
如果已经下载了 Android Studio,就可以进入下一步,即 “设置 SDK”。
下载和设置 Android Studio 的步骤如下:
检查确保您的系统满足 必要要求
从 https://developer.android.com/studio/index.html 安装最新版本的 Android Studio
运行可执行文件,按照设置向导操作,并使用推荐的所有开发工具包
设置SDK¶
现在您已经安装了 Android Studio,您需要使用本赛季的 FTC® SDK(软件开发工具包)来创建您团队的代码。
下载 SDK¶
SDK 在 GitHub 存储库中公开发布。当前的 SDK 位于 FtcRobotController 资源库中。
下载并在 Android Studio 中打开 SDK¶
打开 Android Studio。如果打开了其他项目,请将其关闭 ( File -> Close Project )(文件 -> 关闭项目)。确保侧边栏上选择了 “项目”。
点击左下角的齿轮图标,选择 “检查更新”。如果没有最新版本,请下载更新。
选择 “从 VCS 获取”。确保侧边栏上选择了 “Repository URL” ,然后在 URL 文本框中输入
https://github.com/FIRST-Tech-Challenge/FtcRobotController.git。最后,点击右下角的 “克隆 “按钮下载 SDK。小技巧
还可以考虑将 “目录 “文本框中的最终文件夹名称从 “FtcRobotController “更改为反映您的团队和赛季的名称,例如,编号为 99999 的团队可以使用
99999-2025-26-code。
当被问及是否信任并打开项目时,选择 “信任项目”。
选择窗口右上角图标组中的锤子图标。这将下载所需的模块并构建项目。
等待 Gradle 完成构建。默认情况下,该指示器应位于窗口底部。
布局¶
Android Studio 乍一看很吓人,但要正确使用它,只需具备几个功能。
创建类¶
在项目视图中,首先要注意的是左侧面板中的项目组件。展开 TeamCode 文件夹,然后展开 java 文件夹,你会看到一个 org.firstinspires.ftc.teamcode 文件夹。
这是您为机器人创建代码的地方。要创建一个新的Java类,右键单击包,选择新建,然后选择“Java Class.”
如果要创建子文件夹进行组织,可以选择 “Package” 选项。然后,就可以在这些文件夹中创建类别。
小技巧
该目录中的 readme.md 文件包含有用的文档,包括 SDK 随附的示例程序信息,您可以使用和修改这些示例程序。我们强烈建议您阅读这些信息。
安装程序¶
要将程序安装到机器人控制器上,可使用位于应用程序窗口顶部中间位置的 play 按钮。
在其旁边,您会看到一个设备下拉菜单。将机器人控制器连接到电脑后,设备应该会在一段时间后出现在下拉菜单中。然后,点击 play 按钮,程序就会安装到设备上。
如果在此过程中遇到任何问题,请参阅官方 REV 文档 。REV 网站上的一些有用网页如下:
如果您仍有问题,可以在 FTC Discord 寻求帮助。
Gradle¶
Gradle 是一款用于软件开发的构建工具。在 FTC 中,它用于构建和管理项目的依赖关系。
当您更新任何 Gradle 文件时,都需要执行 Gradle 同步,将您的项目与更改同步并重建。在您的 build.common.gradle 中,您可以找到关于如何构建机器人控制器应用程序的信息。
重建¶
您可以使用 “Build” 菜单轻松重建项目。
注:在 Windows 和 Linux 系统中,可通过单击窗口左上角的三横线菜单图标访问菜单栏。¶
要清理项目以便从头开始重建项目,请选择 clean project (”清理项目 “)选项。这将删除项目中的旧编译文件。要重建项目,请选择 “重建 “选项。
失效和重启¶
有时在移动、重构等操作后会出现错误。第一步是尝试清理项目并重建。如果这不起作用,你可以使用 文件 下拉菜单中的 ``invalidate and restart``( “无效并重新启动 “)来修复这些错误。这会清除 Android Studio 的缓存并重新启动它。
添加依赖项¶
如果您想在项目中添加依赖项,可以在 TeamCode 目录中的 build.gradle 文件中添加。
文件底部应该有一个依赖项块。
dependencies {
implementation project(':FtcRobotController')
}
有些依赖项需要修改其他 Gradle 文件。请务必阅读要添加的依赖项的安装说明。
然后,在依赖关系块中添加一行,以实现依赖关系。一般使用 implementation 'com.developer.package:name:version' 来实现。
dependencies {
implementation project(':FtcRobotController')
implementation 'com.developer.package:name:version'
}
有关正确的软件包名称和版本,请参阅您使用的任何库的说明。
最后,执行 Gradle 同步。
安卓调试桥接器(adb)¶
备注
在 macOS、Linux 或使用 PowerShell 时,如果您在 platform-tools 目录中,则必须将以 adb 开头的命令更改为以 ./adb 开头。
无线通信¶
安卓调试桥接器(ADB)是一种命令行工具,可实现机器人控制器(手机或 Control Hub )之间的无线通信。
ADB 应与 Android Studio 中的平台工具一起提供。导航到项目根目录下的 local.properties 文件,你应该能看到电脑上 Android SDK 的路径,例如 C:UsersWoodieAppDataLocalAndroidSdk 。然后导航到 platform-tools ,一个名为 adb 的应用程序就会出现在那里。要使用它,请打开 CLI(如 PowerShell 或命令提示符)并运行 adb devices 或 ./adb devices 。
有关 ADB 的更多信息,请参阅 ADB 文档。
设置 ADB¶
确保设备已启用 USB 调试,并处于开发者模式。
确保已安装 ADB。如果没有,请按照 此链接 中的说明进行操作。
备注
您可以使用 adb logcat 命令通过 ADB 使用 logcat。这对调试非常有用,因为它允许你以无线方式查看日志,从而节省时间。请记住,logcat 是调试软件的*佳方法。
将 ADB 添加到 PATH¶
如果要从任何目录使用 ADB,请将其添加到 PATH。按照在线教程添加到 PATH,并设置 PATH 包括 platform-tools 目录。这样,你就可以在系统的任何地方运行 ADB 命令了。
在 PATH 中添加变量:
无线连接控制集线器¶
连接到 Control Hub 托管的 Wi-Fi 热点。热点名称应为 “TEAMNUMBER-RC “或由此衍生的一些小名称。如果每个团队有多个设备,则可以包含额外的字母。有关网络命名方案的更多详情,请参阅 Competition Manual 中的 R707。
连接到控制集线器的网络后,只需使用
adb connect 192.168.43.1:5555连接即可。另外,如果运行了 REV Hardware Client ,它将尝试自动将 ADB 连接到通过 Wi-Fi 连接的任何 Control Hub 。该选项不需要手动设置 ADB,因此是许多使用网络支持的计算机的团队的首选。
无线连接手机¶
将机器人控制器手机插入电脑。
在
platform-tools目录下运行adb devices命令,查看手机是否显示。运行
adb usb,然后运行adb tcpip 5555。然后就可以拔掉电话线了。连接到设备托管或使用的同一 Wi-Fi 网络。手机创建的 Wi-Fi 直接网络应称为 “TEAMNUMBER-RC “ 或其派生词。如果每个团队有多个设备,则可能包含额外的字母。有关网络命名方案的更多详情,请参阅 Competition Manual 中的 R707。
使用
adb connect 192.168.49.1:5555连接手机。如果不起作用,请重新检查电话的 IP 地址,如果不同,请使用该 IP 地址再试一次。
一旦与 Control Hub 或手机建立了连接,它就会自动出现在 Android Studio 的设备下拉菜单中。
Logcat¶
Logcat 对于在运行时调试代码问题或找出出错原因非常有用。例如,如果您的应用程序活动崩溃,而您在日志中看到 5000 行相同的错误,那么您的代码中可能存在无限递归!
要使用 logcat,请插入设备(或通过 ADB 连接)。然后,选择 logcat 按钮。您的窗口应该如下所示。
有关使用 logcat 的一些有用信息,请参见 <https://developer.android.com/studio/debug/logcat>`_ 。
如果您遇到不明白的问题,可以截取日志截图或选择并复制错误,然后在 FTC discord 提问。
无线配置¶
您可以像往常一样在驱动站或机器人控制器上设置配置。不过,您也可以在 TeamCode/src/main/res/xml 中创建有效的配置 XML 文件。您可以在 /sdcard/FIRST 文件夹中找到与配置文件同名的 XML 文件。
要以无线方式获取这些 XML 文件,可以使用 adb pull /sdcard/FIRST/config.xml /fully/qualified/path/res/xml 。
如果 res/xml 中包含有效的配置 XML 文件,则在将机器人推送至机器人控制器(RC)或 Control Hub 时,该文件将显示为可用于机器人的配置。
版本控制¶
版本控制是一种非常有用的工具。它允许查看(和还原)以前版本的代码、方便协作、拥有可以合并在一起的多个版本的代码等。
就版本控制系统而言,我们强烈推荐使用 git,尤其是与 Android Studio 内置的 VCS 工具或 Github Desktop 等图形用户界面配合使用时。虽然 git 教程不在 Game Manual 0 的范围之内,但这里有一些 git 资源: