Utilizarea Android Studio¶
Android Studio is an integrated development environment (IDE) for Android app development based on IntelliJ. It compiles your code which is then installed onto the Robot Controller: either the Control Hub or a legal Android phone.
Descărcarea Android Studio¶
If you’ve already downloaded Android Studio, you can move on to the next step, which is setting up the SDK.
Pașii pentru descărcarea și pregătirea Android Studio sunt:
Verifică dacă sistemul tău este suficient de performant: cerințe necesare
Install the latest version of Android Studio from https://developer.android.com/studio/index.html
Rulează programul executabil, urmează pașii, și folosește orice sau toate kit-urile recomandate de dezvoltare.
Pregătirea SDK-ului¶
Now that you have Android Studio installed, you’re going to want to use the current season’s FTC® SDK (software development kit) where you will create your team’s code.
Descărcarea SDK-ului¶
The SDK is publicly released to a GitHub repository. The current SDK can be found in the FtcRobotController repository.
Downloading and opening the SDK in Android Studio¶
Open Android Studio. If you have another project open, close it (File -> Close Project). Make sure „Projects” is selected on the sidebar.
Click on the gear icon in the bottom left corner, and select „check for updates.” If you do not have the latest version, download the updates.
Select „Get from VCS”. Make sure „Repository URL” is selected on the sidebar, then put
https://github.com/FIRST-Tech-Challenge/FtcRobotController.gitinto the URL text box. Finally, click the Clone button in the bottom right corner to download the SDK.Sfat
Consider also changing the name of the final folder in the Directory textbox from
FtcRobotControllerto something that reflects your team and the season, e.g. team number 99999 might use99999-2025-26-code.
When asked if you want to trust and open the project, choose „Trust Project”.
Select the hammer icon in the icon group in the top right corner of the window. This will download any needed modules and build the project.
Așteaptă ca Gradle să termine build-ul. Acest indicator ar trebui să fie localizat în partea de jos a ferestrei implicit.
Aspect¶
Android Studio poate arăta intimidant la prima vedere, însă sunt doar câteva caracteristici necesare pentru a-l folosi corect.
Crearea Claselor¶
The first thing to note in the project view is the left panel with the project components. Expand the TeamCode folder, then the java folder, and you will see an org.firstinspires.ftc.teamcode package.
Aici este locul unde vei crea cod pentru robot. Pentru a crea o clasă nouă Java, click-dreapta pe pachet, selectează New, și apoi alege „Java Class”.
If you want to create a subfolder for organization purposes, you can select the „Package” option. Then, you can create classes in those packages.
Sfat
The readme.md file in this directory contains useful documentation, including information on sample programs shipped with the SDK that you can use and modify. We highly recommend you read this information.
Instalarea Programului Tău¶
To install your program onto the Robot Controller, you will use the play button located near the top middle of the application window.
Near it you will see a dropdown for devices. When you connect your Robot Controller to your computer, the device should appear in the dropdown after some time. Then, click the play button and your program will install onto the device.
Dacă intervine orice problemă în acest proces, citește documentația oficială `REV b<https://docs.revrobotics.com/duo-control/>`_. Câteva pagini folositoare de pe site-ul REV sunt:
If you’re still stuck, you can ask for help in the FTC Discord.
Gradle¶
Gradle este o unealtă de construcție pentru dezvoltarea software-ului. În scopul FTC, este folosit pentru a construi și organiza dependențele (dependencies) proiectului tău.
Când îți actualizezi fișierele Gradle trebuie să faci o sincronizare Gradle, care îți sincronizeaza proiectul cu schimbările făcute și îl reconstruiește. În build.common.gradle, vei găsi informații despre cum aplicația pentru Robot Controller este construită.
Reconstruirea¶
You can rebuild your project easily with the Build menu.
Note: On Windows and Linux, the menubar is accessed by clicking the hamburger menu icon at the top left of the window.¶
To clean your project to allow you to rebuild your project from scratch, choose the clean project option. This removes old compiled files from your project. To then rebuild your project, choose the rebuild option.
Invalidează și Restartează¶
Sometimes you can get errors after moving things around, refactoring, etc. The first step is to try cleaning the project and doing a rebuild. If this doesn’t work, you may be able to fix these errors with invalidate and restart under the file dropdown. This clears any caches Android Studio has and restarts it.
Adăugarea Dependențelor¶
Dacă vrei să adaugi dependențe proiectului tău, poți face acest lucru în fișierul build.gradle din registrul TeamCode.
Ar trebui să fie un bloc de dependențe la sfârșitul fișierului.
dependencies {
implementation project(':FtcRobotController')
}
Unele dependențe au nevoie de schimbări la alte fișiere Gradle. Asigură-te că ai citit instrucțiunile de instalare pentru orice dependențe pe care vrei să le adaugi proiectului.
Next, you add a line in the dependencies block to implement the dependency. This is generally done with implementation 'com.developer.package:name:version'.
dependencies {
implementation project(':FtcRobotController')
implementation 'com.developer.package:name:version'
}
Citește instrucțiunile pentru orice librărie folosești pentru a adăuga numele și versiunea corectă a pachetului.
În final, realizează o sincronizare Gradle.
Android Debug Bridge (adb)¶
Notă
On macOS, Linux, or using PowerShell, you will have to change any commands that start with adb to start with ./adb if you are in the platform-tools directory.
Comunicare Wireless¶
Depanarea Android (ADB) este o unealtă prin terminalul de comandă care îți permite să comunici wireless cu Robot Controller-ul (telefon sau Control Hub).
ADB ar trebui să vină implicit cu uneltele din Android Studio. Navighează în fișierul local.properties în root-ul (fișierul de bază) proiectului tău și ar trebui să vezi un drum către Android SDK-ul instalat pe calculatorul tău, precum C:UsersWoodieAppDataLocalAndroidSdk. Apoi navighează către platform-tools, iar o aplicatie numită adb ar trebui să fie acolo. Pentru a o folosi, deschide CLI (precum Powershell sau terminalul de comandă) și rulează adb devices sau ./adb devices.
For more information on ADB, you can look at the ADB documentation.
Pregătirea ADB-ului¶
Asigură-te că depanarea USB este activată pe dispozitivul tău și este în modul de dezvoltator.
Asigură-te că ai ADB instalat. Dacă nu îl ai, urmează instructiunile la acest link
Notă
Poți folosi logcat via ADB prin comanda adb logcat. Această comandă este foarte folositoare pentru depanare deoarece îți permite să te uiți la istoric wireless, ceea ce salvează timp. Reține, logcat este cea mai bună metodă să îți depanezi software-ul.
Adaugă ADB la PATH¶
If you want to use ADB from any directory, add it to PATH. Follow an online tutorial for adding to PATH and set the PATH to include the platform-tools directory. Once you do that, you can run ADB commands from anywhere on your system.
Adăugarea variabilelor în PATH
Conectarea Wireless la un Control Hub¶
Connect to the Wi-Fi hotspot hosted by the Control Hub. The hotspot should be called „TEAMNUMBER-RC” or some small derivation of that. It may include extra letters if you have multiple devices per team. Refer to R707 in the Competition Manual for further details on the network naming scheme.
Odată ce esti conectat la rețeaua Control Hub-ului, pur și simplu te conectezi la el prin comanda
adb connect 192.168.43.1:5555.Alternatively, if you have the REV Hardware Client running, it will attempt to automatically connect ADB to any Control Hub connected via Wi-Fi. This option does not require manually setting up ADB, and is therefore preferred by many teams using supported computers.
Conectarea Wireless la un Telefon¶
Conectează telefonul conectat la robot în calculator.
Rulează comanda
adb devicesîn registrulplatform-toolsși vezi dacă îți apare telefonul.Rulează
adb usb, apoiadb tcpip 5555. Acum poți deconecta telefonul.Connect to the same Wi-Fi network the device is either hosting or on. The Wi-Fi direct network created by the phone should be called „TEAMNUMBER-RC” or some small derivation of that. It may include extra letters if you have multiple devices per team. Refer to R707 in the Competition Manual for further details on the network naming scheme.
Conectează-te la telefon prin comanda
adb connect 192.168.49.1:5555. Dacă aceasta nu merge, verifică adresa IP a telefonului și încearcă cu adresa IP respectivă dacă este diferită.
Once a connection is established to a Control Hub or phone, it should automatically appear in the device dropdown in Android Studio.
Logcat¶
Logcat is extremely useful for debugging issues with your code at runtime or figuring out what went wrong. For example, if your app activity crashes and you pull up the log seeing 5000 lines of the same error, there is probably infinite recursion in your code!
To use logcat, plug in your device (or connect via ADB). Then, select the logcat button. Your window should look like this.
Some useful information on using logcat can be found here.
If you have an issue you don’t understand, you can take a screenshot of the log or select and copy the error and ask a question in the FTC discord.
Configurare Wireless¶
Îți poți face o configurație în Driver Station sau Robot Controller în mod normal. Totuși, îți poți crea și o configurație validă printr-un fișier XML în TeamCode/src/main/res/xml. Îți poți găsi fișierele de configurare în folder-ul /sdcard/FIRST sub formă de fișier XML cu acelaș nume al configurației.
Pentru a lua aceste fișiere XML wireless, poți folosi adb pull /sdcard/FIRST/config.xml /fully/qualified/path/res/xml.
Dacă o configurație validă dintr-un fișier XML este în res/xml, aceasta va apărea în lista de configurații și o poți folosi pe robot când o încarci pe Robot Controller sau pe Control Hub.
Version Control (Jurnal)¶
Version Control este o unealtă foarte folositoare. Îți permite să te uiti (și să revii) la versiuni anterioare ale codului, colaborare facilă, multiple versiuni ale codului care pot fi combinate împreună, etc.
Noi recomandăm git, în special când este folosit cu un meniu interactiv (GUI) precum uneltele VCS ale Android Studio sau GitHub Desktop. Deși un tutorial de git nu este documentat în Game Manual 0, aici sunt câteva resurse git: