From ca8805651d6c67131576d1f4530c480127eb3429 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 18:42:04 +0200 Subject: [PATCH 001/167] New translations buildingaaps.md (French) --- docs/CROWDIN/fr/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/fr/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/fr/SettingUpAaps/BuildingAaps.md index 512a426faa9a..4015249c0ff8 100644 --- a/docs/CROWDIN/fr/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/fr/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Prérequis matériels et logiciels pour la compilation de AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. Si vous le faites, le processus de compilation peut prendre beaucoup de temps avant de se terminer, mais une fois lancé, vous pouvez le laisser tourner sans surveillance. - -## Aide et support pour le processus de compilation - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Guide pas à pas pour compiler l'application AAPS - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Étapes pour l'installation de Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). N'importe quelle version récente de Git devrait fonctionner, sélectionnez la version correspondant à votre système d'exploitation : Mac, Windows ou Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. Si vous installez Git via homebrew, vous n'avez pas besoin de modifier la configuration. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. Ca devrait ressembler à "C:\Program Files\Git\cmd\git.exe" - -* Au fur et à mesure que vous avancez sur les différentes étapes de l'installation de Git, validez simplement en gardant les options par défaut. - -* Après l'installation, si vous avez oublié de noter l'endroit où Git a été installé, vous pouvez le trouver comme suit : tapez "git" dans la barre de recherche du PC, cliquez avec le bouton droit sur "Git bash", sélectionnez "Ouvrir l'emplacement du fichier", survolez l'icône "Git bash" avec votre souris, ce qui vous indiquera alors où il est installé. - -* Redémarrez votre ordinateur avant de continuer. - -(Building-APK-install-android-studio)= -### Installer Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Télécharger le code source AAPS - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -Nous allons maintenant indiquer à Android Studio où aller chercher le code : - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL/URL du dépôt" devrait être sélectionné (par défaut) à gauche (1). -* "Git" devrait être sélectionné (par défaut) comme système de contrôle de version (2). -* Copiez maintenant cette URL : - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - et collez-la dans la zone de texte de l'URL (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Cliquez sur le bouton "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -Vous allez alors voir un écran vous indiquant que le dépôt est en train d'être cloné (cloning repository) : - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Cliquez sur "Trust project/Faire confiance au projet" : - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Pour les utilisateurs de Windows : Si votre pare-feu demande la permission, autorisez l'accès : - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -Une fois le dépôt cloné avec succès, Android Studio ouvrira le projet en question. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Compilez l'APK AAPS signé - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Sélectionnez "APK" au lieu de "Android App Bundle" et cliquez sur "Next" : - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -Sur l'écran suivant, vérifiez que le "Module" sélectionné est bien "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Cliquez sur "Create new.../Créer nouveau..." (2) pour commencer la création de votre fichier de clés. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. Il est crypté et les informations sont sécurisées avec un mot de passe. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - Les mots de passe du fichier de clés et de la clé n'ont pas besoin d'être très complexes. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* L'alias par défaut (3) de votre clé est "key0", laissez-le tel quel. - -* Il vous faut maintenant un mot de passe pour la clé. Pour simplifier, vous pouvez si vous le souhaitez, utiliser le même mot de passe que pour le fichier de clés au-dessus. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Cliquez sur "OK" (8) pour continuer : - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Cliquez sur "Next/Suivant" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Vous pouvez maintenant voir la compilation en cours : - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Le message "BUILD SUCCESSFUL / COMPILATION RÉUSSIE" s'affiche quand la génération est terminée. Vous verrez peut-être une notification sur laquelle vous pouvez cliquer "locate/localiser". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -Dans la fenêtre des notifications, cliquez sur le lien bleu "locate/trouver" : - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Félicitations ! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From fe41b14d129cf59d825d7a301038921cf4baa8a9 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 18:51:01 +0200 Subject: [PATCH 002/167] New translations buildingaaps.md (Spanish) --- docs/CROWDIN/es/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/es/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/es/SettingUpAaps/BuildingAaps.md index 575952a10c68..074775982d70 100644 --- a/docs/CROWDIN/es/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/es/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Instalar Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 39eadb9c2db74eee87b437ce7774f0d3b4ee05da Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 18:59:57 +0200 Subject: [PATCH 003/167] New translations buildingaaps.md (Czech) --- docs/CROWDIN/cs/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/cs/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/cs/SettingUpAaps/BuildingAaps.md index c6a134652661..7d75a0752378 100644 --- a/docs/CROWDIN/cs/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/cs/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Specifikace hardware a softwaru pro vytvoření AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. Pokud to uděláte, dokončení procesu sestavení může trvat dlouho, ale jakmile začnete, můžete ho nechat bez dozoru. - -## Pomoc a podpora během procesu sestavení - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Návod k sestavení aplikace AAPS krok za krokem - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Postup instalace Gitu - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Jakákoliv nedávná verze Gitu by měla fungovat, vyberte správnou verzi pro váš systém, ať je to Mac, Windows nebo Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. Pokud instalujete git přes homebrew, není třeba měnit žádné předvolby. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. Bude se jednat o cestu jako "C:\Program Files\Git\cmd\git.exe". - -* V průběhu instalace Gitu jen přijměte všechny výchozí možnosti. - -* Po instalaci, pokud jste si zapomněli poznamenat cestu k instalaci Gitu, najdete program takto: napište "git" do vyhledávacího panelu Windows, klikněte pravým tlačítkem myši na "Git bash", vyberte "open file location" a přejeďte myší na ikonu "Git bash", která pak odhalí, kde je instalována. - -* Před dalším krokem restartujte počítač. - -(Building-APK-install-android-studio)= -### Instalace Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Stažení zdrojového kódu AAPS - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -Nyní řekneme Android Studiu, odkud kód získat: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* Zvolte "Adresa URL úložiště" (výchozí) vlevo (1). -* Ve výchozím nastavení by měl být vybrán verzovací systém „Git“ (2). -* Nyní zkopírujte tuto adresu URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - a vložte ji do textového pole URL (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Nyní spusťte klonování kódu kliknutím na tlačítko "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -Nyní uvidíte obrazovku s informací, že se repozitář klonuje: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Klikněte na "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Pouze pro uživatele Windows: Pokud firewall požaduje oprávnění, udělte mu je: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -Po úspěšném dokončení klonování repozitáře otevře Android Studio naklonovaný projekt. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Sestavení "podepsaného" APK aplikace AAPS - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Vyberte variantu „APK“ namísto předvybrané „Android App Bundle“ a klikněte na „Next“: - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -Na další obrazovce zkontrolujte, že "Module" je nastavený na "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Kliknutím na "Create new..." (2) začnete vytvářet váš "keystore" soubor (úložiště klíčů). - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. Tento soubor je zašifrovaný a chráněný heslem. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - Heslo ke keystore souboru a uloženým klíčům nemusí být složité. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* Výchozí alias (3) pro váš klíč je "key0", ponechte to beze změny. - -* Teď potřebujete heslo k vašemu klíči. Pro zjednodušení, pokud chcete, můžete použít stejné heslo jako k vašemu keystore souboru. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Pro pokračování klikněte na "OK" (8): - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Klikněte na tlačítko "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Nyní můžete sledovat proces sestavování: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Po dokončení sestavení aplikace zobrazí Android Studio informaci "BUILD SUCCESSFUL". Můžete vidět vyskakovací okno na kterém můžete kliknout na text "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -V oznámení klikněte na modrý odkaz "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From ff310bc46bfe21d1ac0742be91417472800f7602 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 19:17:20 +0200 Subject: [PATCH 004/167] New translations buildingaaps.md (Greek) --- docs/CROWDIN/el/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/el/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/el/SettingUpAaps/BuildingAaps.md index 9b3e471bcb4c..5989cf3fd8b9 100644 --- a/docs/CROWDIN/el/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/el/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Εγκατάσταση του Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From c0e0eb3b601a10d6db6916c0dd8ce47401869af6 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 19:25:45 +0200 Subject: [PATCH 005/167] New translations buildingaaps.md (Hebrew) --- docs/CROWDIN/he/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/he/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/he/SettingUpAaps/BuildingAaps.md index d2b0cb93efa8..ea73db89bbfb 100644 --- a/docs/CROWDIN/he/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/he/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### התקנת Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -מזל טוב! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 8380434364155a28498753f72e24336bd804ef5b Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 19:34:09 +0200 Subject: [PATCH 006/167] New translations buildingaaps.md (Korean) --- docs/CROWDIN/ko/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/ko/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/ko/SettingUpAaps/BuildingAaps.md index ab945133e133..195a8f3037de 100644 --- a/docs/CROWDIN/ko/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/ko/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Install Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 62f863701713113ac3cfcc997c8364755380767c Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 19:42:36 +0200 Subject: [PATCH 007/167] New translations buildingaaps.md (Lithuanian) --- docs/CROWDIN/lt/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/lt/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/lt/SettingUpAaps/BuildingAaps.md index 422c5493f665..de235042c554 100644 --- a/docs/CROWDIN/lt/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/lt/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Android Studio įdiegimas - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From c8f84cd4110de3a30e842a910ff08cf7fa032423 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 19:50:58 +0200 Subject: [PATCH 008/167] New translations buildingaaps.md (Dutch) --- docs/CROWDIN/nl/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/nl/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/nl/SettingUpAaps/BuildingAaps.md index 7d215422a4fa..2aa06619889f 100644 --- a/docs/CROWDIN/nl/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/nl/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Installeer Git + Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From f6c454546e7c6abd1d03dd79666f8997be82cbf1 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 19:59:12 +0200 Subject: [PATCH 009/167] New translations buildingaaps.md (Polish) --- docs/CROWDIN/pl/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/pl/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/pl/SettingUpAaps/BuildingAaps.md index f3d3f5fb5f5c..aa95e0cf7c3a 100644 --- a/docs/CROWDIN/pl/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/pl/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Install Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 19c51b5e563fbfae9ca6408af5a8c2e52d7e7e7a Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:07:48 +0200 Subject: [PATCH 010/167] New translations buildingaaps.md (Portuguese) --- docs/CROWDIN/pt/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/pt/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/pt/SettingUpAaps/BuildingAaps.md index 91ba2aec1ee9..72ad00ea6671 100644 --- a/docs/CROWDIN/pt/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/pt/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Instalar o Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 25f42db98d33d4668efcf137e9fd9b81424250f3 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:16:21 +0200 Subject: [PATCH 011/167] New translations buildingaaps.md (Russian) --- docs/CROWDIN/ru/SettingUpAaps/BuildingAaps.md | 419 +----------------- 1 file changed, 9 insertions(+), 410 deletions(-) diff --git a/docs/CROWDIN/ru/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/ru/SettingUpAaps/BuildingAaps.md index 96dcdce30f12..bafa701fa0dd 100644 --- a/docs/CROWDIN/ru/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/ru/SettingUpAaps/BuildingAaps.md @@ -6,422 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Рекомендуемые спецификации компьютеров для сборки файла apk)= -## Технические характеристики компьютера и программного обеспечения для построения AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. Процесс сборки приложения при этом может занять много времени, но после начала можно оставить его без присмотра. - -## Помощь и поддержка в процессе сборки - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Пошаговое руководство по созданию приложения AAPS - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Шаги по установке Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Любая новая версия Git должна работать, выбирайте версию в соответствии с вашей системой - Mac, Windows или Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. Если вы устанавливаете Git через homebrew, то нет необходимости изменять настройки. - -(Запомните_путь_к_Git)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. Это будет что-то вроде "C:\Program Files\Git\cmd\git.exe" - -* По мере прохождения нескольких шагов установки Git, принимайте все параметры по умолчанию. - -* После установки, если вы забыли место установкин Git, вы можете найти его следующим образом: введите "git" в строке поиска ПК, щелкните правой кнопкой мыши на "Git bash", выберите "открыть местоположение файла", наведите курсор мыши на значок "Git bash"., который затем покажет, где он установлен. - -* Перезагрузите компьютер перед следующим шагом. - -(Сборка-APK-установка-android-studio)= -### Установите Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Сборка-APK-загрузка-AAPS-кода)= -### Загрузите код AAPS - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -Теперь мы скажем программе Android Studio, откуда получить код: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* Должен быть выбран "URL репозитория" (по умолчанию) слева (1). -* В качестве системы управления версиями должен быть выбран "Git" (по умолчанию) (2). -* Теперь скопируйте URL-адрес: - ``` - https://github.com/nightscout/AndroidAPS.git - -Context | Edit Context - ``` - и вставьте его в текстовое поле URL (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Теперь нажмите кнопку "Клонировать" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -Теперь вы увидите экран, сообщающий, что репозиторий клонируется: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Нажмите на "Доверять проекту": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Только для пользователей Windows: Если ваш брандмауэр запрашивает разрешение, предоставьте доступ: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -После успешного клонирования репозитория, Android Studio откроет клонированный проект. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Сборка-APK-задать-путь-к-git-в-настройках) = -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Сборка-APK-генерировать-подписанный-apk)= -### Построение подписанного приложения AAPS apk - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Выберите "APK" вместо "Android App Bundle" и нажмите "Далее": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -На следующем экране убедитесь, что "Module" установлен в "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Нажмите "Создать новый..." (2) для создания хранилища ключей. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. Он зашифрован и информация защищена паролями. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - Примечание: Пароли для хранилища ключей и ключей не должны быть сложными. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* По умолчанию псевдоним (3) для вашего ключа это "key0", оставьте его без изменений. - -* Теперь вам нужен пароль для ключа. Для простоты можете использовать тот же пароль, что и для хранилища ключей выше. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Нажмите "OK" (8), чтобы продолжить: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Нажмите "Далее" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Теперь вы можете наблюдать за ходом построения приложения: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -После завершения сборки Android Studio выведет сообщение "СБОРКА ЗАВЕРШЕНА УСПЕШНО.". Вы увидите всплывающее уведомление, на которое можете нажать, чтобы найти файл ("locate"). If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -В окне Уведомления нажмите на синюю ссылку "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Поздравляем! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 46389eb6fb1b81f814734b2130aef607053d87da Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:24:50 +0200 Subject: [PATCH 012/167] New translations buildingaaps.md (Slovak) --- docs/CROWDIN/sk/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/sk/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/sk/SettingUpAaps/BuildingAaps.md index f3d3f5fb5f5c..aa95e0cf7c3a 100644 --- a/docs/CROWDIN/sk/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/sk/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Install Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From afec8c1f930f061c1352ea93ca03281075020874 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:33:20 +0200 Subject: [PATCH 013/167] New translations buildingaaps.md (Turkish) --- docs/CROWDIN/tr/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/tr/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/tr/SettingUpAaps/BuildingAaps.md index 732d5e22ff03..cfabef8a8ab2 100644 --- a/docs/CROWDIN/tr/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/tr/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Android Studio'yu yükleyin - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Tebrikler! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 0ff9fc59d368378d97fcaa7c4eccff25167f6170 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:41:42 +0200 Subject: [PATCH 014/167] New translations buildingaaps.md (Chinese Simplified) --- .../zh_CN/SettingUpAaps/BuildingAaps.md | 414 +----------------- 1 file changed, 9 insertions(+), 405 deletions(-) diff --git a/docs/CROWDIN/zh_CN/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/zh_CN/SettingUpAaps/BuildingAaps.md index def234878a7c..7166591ba934 100644 --- a/docs/CROWDIN/zh_CN/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/zh_CN/SettingUpAaps/BuildingAaps.md @@ -6,417 +6,21 @@ 详情请参阅[常见问题页面](../UsefulLinks/FAQ.md)。 +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## 构建AAPS所需的计算机和软件规格。 +### Build with a browser -* 构建APK可能需要特定版本的**[Android Studio](https://developer.android.com/studio/)**。 请参考下方表格: +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS 版本 | 推荐
Android Studio
版本 | 备选
Android Studio
版本 | Gradle | JVM | -| ----------------------- | ---------------------------------------- | ---------------------------------------- | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug 功能更新包 (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -推荐版本是已内置适配的JVM版本。 推荐版本同时也是构建**AAPS**的最低可用版本。 若使用低于"推荐"的版本将**无法**完成构建。 若选用其他版本,可能遭遇与JVM版本相关的兼容性问题。 请参考[Android Studio问题排查指南](#troubleshooting_androidstudio-uncommitted-changes)解决。 若您当前的Android Studio版本未在下表中列出,则需先升级至支持版本。 +---- -Gradle版本由源代码仓库锁定,在拉取/更新代码时将自动获取正确版本。 此处列出仅作参考,无需手动干预。 - -* Android Studio 不支持 [Windows 32位系统](#troubleshooting_androidstudio-unable-to-start-daemon-process)。 请牢记,**64位CPU和64位操作系统是必要条件**。 如果您的系统不满足这一条件,您需要更换相应的硬件、软件或整个系统。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
操作系统 (仅限 64 位)Windows 8 或更新版Mac OS 10.14 或更新版任何支持Gnome、KDE或Unity桌面环境的Linux系统;  GNU C库2.31或更高版本。

CPU(仅限64位)

x86_64 CPU架构;第二代Intel Core或更新版本,或支持
Windows Hypervisor的AMD CPU。
基于ARM的芯片,或第二代Intel Core或更新版本(需支持
Hypervisor.Framework)。
x86_64 CPU架构;第二代Intel Core或更新版本,或支持AMD虚拟化(AMD-V)和SSSE3的AMD处理器。

内存(RAM)

16GB or more

硬盘

至少30GB的可用空间。 建议使用SSD(固态硬盘)。

分辨率

至少1280 x 800

网络连接

宽带

- -**强烈建议(非强制)使用固态硬盘(SSD)而非机械硬盘(HDD),因为这将减少你构建AAPS apk文件所需的时间。**不过,在构建**AAPS** apk文件时,你仍然可以使用机械硬盘。 如果使用机械硬盘,构建过程可能会需要很长时间才能完成,但是一旦开始,你就可以让它无人值守地运行。 - -## 构建过程中的帮助和支持 - -如果在构建**AAPS**应用的过程中遇到困难,有一个专门的[**Android Studio故障排除**](../GettingHelp/TroubleshootingAndroidStudio)部分,请先参考该部分。 - -如果你认为构建说明中有错误、遗漏或令人困惑的地方,或者你仍然在努力解决问题,请联系[Facebook](https://www.facebook.com/groups/AndroidAPSUsers)或[Discord](https://discord.gg/4fQUWHZ4Mw)上的其他**AAPS**用户组。 如果你想自己更改某些内容(如更新截图_等_),请提交一个[拉取请求(PR)](../SupportingAaps/HowToEditTheDocs.md)。 - -## 构建AAPS应用的逐步指南。 - -```{admonition} WARNING -:class:警告 -如果你之前已经构建过AAPS,则无需再次执行以下所有步骤。 -请直接跳转到[更新指南](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -在本指南中,您将看到构建**AAPS** apk文件的_示例_截图。 由于我们用于构建**AAPS** apk的软件**Android Studio**会定期更新,这些截图可能与您的安装界面不完全一致,但您仍然可以按照它们进行操作。 - -**Android Studio**可在Windows、Mac OS X和Linux平台上运行,因此不同平台的步骤可能会存在细微差异。 - -(install-git-if-you-dont-have-it)= -### Git安装步骤 - -```{admonition} Why Git? -:class: 下拉菜单(dropdown?) -Git是一个“_版本控制系统_”(VCS)。\ -Git是一个程序,允许您跟踪代码中的更改并与他人协作。 您将使用Git从GitHub网站将**AAPS**源代码的副本复制到您的本地计算机。 然后,您将在计算机上使用Git来构建**AAPS**应用程序(apk)。 -``` - -(BuildingAaps-steps-for-installing-git)= -#### 安装Git的步骤 - -1. 检查**Git**是否已安装 **Settings**(Windows上)或**Android Studio** > **Preferences**(Mac上)。 这将打开以下窗口,点击展开名为**Version Control**(1)的下拉菜单,然后选择**Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -检查**Android Studio**是否可以自动定位正确的**Git可执行文件路径**,方法是点击“Test”按钮(1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -如果自动设置成功,你当前版本的**Git**将显示在路径旁边。 - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -如果你发现**git.exe**没有自动找到,或者点击“Test”导致错误(1),你可以要么 -* 手动输入你[之前](#BuildingAaps-steps-for-installing-git)保存的路径,要么 -* 点击文件夹图标(1),然后手动导航到之前[已安装](#BuildingAaps-steps-for-installing-git)**git.exe**的目录。 -* 使用Test按钮验证你的设置! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### 构建AAPS的“签名版”APK文件 - -```{admonition} Why does the AAPS app need to be "signed"? -:class:下拉菜单(dropdown?) -Android要求每个应用都必须被_签名_,以确保它只能在以后从发布原始应用的同一可信来源更新。 有关此主题的更多信息,请访问[这个链接] -(https://developer.android.com/studio/publish/app-signing.html#generate-key). - -这意味着我们生成一个签名或“keystore”文件,并在构建**AAPS**应用时使用它。 -``` - - -**重要提示:在进行下一步之前,请确保Gradle同步已成功完成!** - - -点击左上角的汉堡菜单以打开菜单栏。 选择**Build**(1),然后选择**Generate Signed App Bundle / APK**(2)。 - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -选择“APK”而不是“Android App Bundle”,然后点击“下一步”: - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -在下一个屏幕中,确保“模块”设置为“AAPS.app”(1)。 - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: 信息 -如果您要为手表创建APK,现在需要选择AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -点击“创建新的...” (2)以开始创建您的密钥库。 - -```{admonition} INFORMATION! -:class: information -您只需要创建一次keystore。 -如果您之前已经构建过AAPS,请不要创建新的keystore,而是选择您现有的keystore并输入其密码! -``` - -**_注意:_** keystore是一个文件,用于存储签名应用的信息。 它是加密的,并且信息通过密码保护。 - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* 点击“文件夹”图标(1)以选择您计算机上的一个路径来保存您的密钥库。 - - **不要**使用存储源代码的目录,而是选择您也会转移到新计算机上的某个目录。 - -```{admonition} WARNING! -:class:警告 -请务必记下您的keystore存储位置。 在构建下一个AndroidAPS更新时,您将需要它! -``` - -* 现在选择一个简单的密码(并记下它),在密码框(2)中输入它,并确认密码(2)。 - - 密钥库和密钥的密码不需要非常复杂。 如果您将来丢失了密码,请参阅[丢失keystore的故障排除](#troubleshooting_androidstudio-lost-keystore)。 - -* 默认的密钥别名(3)是“key0”,请保持不变。 - -* 现在您需要为您的密钥设置一个密码。 为了简单起见,如果您愿意,可以使用与上面设置的密钥库相同的密码。 输入密码(4)并确认它。 - -```{admonition} WARNING! -:class:警告 -记下这些密码! 在构建下一个AAPS更新时,您将需要它们! -``` - -* 有效期默认为25年,保持不变。 - -* 输入您的名字和姓氏(5)。 其他信息无需填写,但您可以根据需要自行添加(6-7)。 - -* 点击“确定”(8)以继续: - - -在**Generate signed App Bundle or APK**页面上,现在将显示您的keystore的路径。 现在重新输入密钥库密码(1)和密钥密码(2),并勾选方框(3)以记住密码,这样您在下次构建APK时(例如,更新到新的AAPS版本时)就不用再次输入这些密码。 点击“下一步”(4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -在下一个屏幕中,选择构建变量“完全版本(fullRelease)”(2),然后点击“创建”(3)。 您应该记住在(1)处显示的目录,因为之后您可以在那里找到构建好的APK文件! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio现在将构建AAPS apk。 在右下角会显示“Gradle 构建运行中”(2)。 此过程需要一些时间,具体取决于您的计算机和互联网连接,因此**请耐心等待!**如果您想查看构建进度,请点击Android Studio底部的“build”小锤子图标(1): - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -现在您可以查看构建进度: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -构建完成后,Android Studio 将显示“构建成功”的信息。 您可能会看到一个弹出通知,您可以点击它以选择“定位”。 如果您错过了这个通知,请点击通知图标(1),然后在屏幕最底部点击**locate**(2)以打开通知列表: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_如果构建不成功,请参阅[Android Studio故障排除部分](../GettingHelp/TroubleshootingAndroidStudio)。_** - -在通知框中,点击蓝色链接“定位”: - -![Locate build](../images/Building-the-App/048_BuildFinished.png) 构建成功后,您将收到通知,并可以通过点击通知中的链接来定位您的apk文件。 - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -恭喜! 现在您已经构建了AAPS apk文件,接下来您将把这个文件传输到您的智能手机上。 - -```{tip} -如果您认为将来可能会使用Android Wear智能手表,那么现在是构建AAPS Wear apk的最佳时机,以确保它与您的AAPS apk同步。 -``` - -接下来,请转到下一阶段[传输和安装**AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md)。 +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 6dbc74b4bce230f4bd527ac948df7222968f6808 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:49:56 +0200 Subject: [PATCH 015/167] New translations buildingaaps.md (Chinese Traditional) --- .../zh_TW/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/zh_TW/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/zh_TW/SettingUpAaps/BuildingAaps.md index 14e88f538a45..01afc983edae 100644 --- a/docs/CROWDIN/zh_TW/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/zh_TW/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ 詳細資訊請參閱 [FAQ 頁面](../UsefulLinks/FAQ.md)。 +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## 建置AAPS所需的電腦和軟體規格 +### Build with a browser -* 可能需要特定版本的 **[Android Studio](https://developer.android.com/studio/)** 來建立 apk。 見下表: +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS版本 | 首選
Android Studio
版本 | 替代
Android Studio
版本 | Gradle | JVM | -| ----------------------- | ---------------------------------------- | ---------------------------------------- | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | 最高支援到 Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog(2023.1.1) | 最高支援到 Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug功能更新(2024.2.2) | 最高支援到 Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -"首選版本"已打包與適當的JVM版本。 首選版本也是你可以用來建立**AAPS**的最小版本。 你**無法**在比"首選"版本更舊的版本上建立。 如果使用不同的版本,你可能會遇到與JVM版本相關的問題。 請參閱 [Android Studio 問題排除](#troubleshooting_androidstudio-uncommitted-changes) 頁面以協助解決這些問題。 如果你當前的 Android Studio 版本未在表格中列出,你必須先更新它。 +---- -Gradle版本與源代碼相連結,下載/更新源代碼時,你將始終獲得正確的Gradle版本。 此處僅供參考,你不必採取行動。 - -* [Windows 32位系統](#troubleshooting_androidstudio-unable-to-start-daemon-process)不支援Android Studio。 請記住**64位中央處理器和64位作業系統是必要條件。** 如果你的系統不符合此條件,你必須更換受影響的硬體或軟體,或整個系統。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
作業系統(僅限64位)Windows 8或更高版本Mac OS 10.14或更高版本任何支援Gnome、KDE或Unity DE的Linux;  GNU C Library 2.31或更新版本

CPU(僅限64位)

x86_64 CPU架構;第二代Intel Core或更新版本,或支援Windows Hypervisor的AMD CPUARM架構晶片,或支援Hypervisor.Framework的第二代Intel Core或更新版本x86_64 CPU架構;第二代Intel Core或更新版本,或支援AMD虛擬化(AMD-V)和SSSE3的AMD處理器

記憶體

16GB 或更多

硬碟

至少30GB的可用空間。 建議使用SSD。

解析度

1280 x 800 最小

網際網路

寬頻

- -**強烈建議(不是強制)使用SSD(固態硬碟)而非HDD(硬碟)因為在建置AAPS apk文件時將需要更少時間。** 在建置**AAPS** apk文件時仍可以使用HDD。 如果這樣做,建置過程可能需要很長時間才能完成,但開始後,你可以讓他無需監控地執行。 - -## 建置過程中的幫助與支援 - -如果在建置**AAPS**應用的過程中遇到困難,請參考專門的[**Android Studio問題排除**](../GettingHelp/TroubleshootingAndroidStudio)部分。 - -如果你認為建置說明中的內容有錯誤、缺失或令人困惑,或仍然感到困難,請與其他**AAPS**用戶群聯繫,群組可在[Facebook](https://www.facebook.com/groups/AndroidAPSUsers)或[Discord](https://discord.gg/4fQUWHZ4Mw)上找到。 如果你想自行更改某些內容(更新螢幕截圖_等_),請提交[拉取請求(PR)](../SupportingAaps/HowToEditTheDocs.md)。 - -## 建置AAPS應用程式的逐步指南 - -```{admonition} WARNING -:class: warning -如果你之前已經建立過AAPS,則不需要再次執行後續所有步驟。 -請直接跳轉到[更新指南](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -在本指南中,你將找到建置**AAPS** apk文件的_範例_螢幕截圖。 由於**Android Studio** - 我們用來建立**AAPS** apk的軟體 - 定期更新,這些螢幕截圖可能與你的安裝不完全相同,但仍然應該可以遵循。 - -由於**Android Studio**可以在Windows、Mac OS X和Linux平台上運行,因此不同平台的步驟可能會略有不同。 - -(install-git-if-you-dont-have-it)= -### 安裝Git - -```{admonition} Why Git? -:class: dropdown - -Git被稱為“_版本控制系統_”(VCS)。 -Git是一個可以讓你追蹤程式碼變更並與他人協作的程式。 你將使用Git從GitHub網站將**AAPS**的原始碼複製到你的本地電腦。 然後,你將在你的電腦上使用Git來建立**AAPS**應用程式(apk)。 -``` - -(BuildingAaps-steps-for-installing-git)= -#### 安裝Git的步驟 - -1. 檢查你是否已經安裝**Git**。 你可以在Windows搜尋欄中輸入“git”來檢查—如果你看到**“Git bash”**或其他形式的Git,那麼它已經安裝,並且你可以直接前往[安裝Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. 如果你沒有安裝Git,請從[**這裡**](https://git-scm.com/downloads)的“下載”部分下載並安裝最新版本。 任何最新的Git版本都應該可以使用,請根據你的系統選擇正確的版本,無論是Mac、Windows還是Linux。 - -**Mac使用者注意:**Git網頁會指導你安裝名為"homebrew"的附加程式來協助安裝。 如果你透過homebrew安裝Git,則無需更改任何偏好設定。 - -(Make_a_note_of_Git_path)= - -* 在安裝過程中,當系統要求你“選擇目的地位置”時,請注意_Git_正在被安裝的**安裝路徑**,你將在下一個步驟需要檢查它。 安裝路徑可能類似於“C:\Program Files\Git\cmd\git.exe” - -* 在進行Git安裝的幾個步驟時,只需接受所有的預設選項。 - -* 安裝完成後,如果你忘記紀錄Git的安裝位置,可以透過以下方式找到他:在PC的搜索欄中輸入“git”,右鍵點擊“Git bash”,選擇“打開檔案位置”,將滑鼠懸停在“Git bash”圖示上,這將顯示安裝位置。 - -* 在進行下一步之前,重新啟動你的電腦。 - -(Building-APK-install-android-studio)= -### 安裝Android Studio - -- **在接下來的步驟中,你必須始終保持聯網,因為Android Studio會下載多個更新。** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio是一個在你的電腦上運行的程式。 它允許你從網際網路(使用Git)下載原始碼並建立智慧型手機(和智慧型手錶)應用程式。 你不能通過在電腦上的Android Studio建立新或更新的應用程式來“破壞”你可能在智慧型手機上運行的當前循環版本的**AAPS**,這些都是完全獨立的過程。 -``` - -安裝Android Studio時最重要的事情之一是**請耐心等候!**在安裝和設置過程中,Android Studio正在下載大量內容,這將需要時間。 - -```{admonition} Different UI -:class: warning -匯入注意:在最近的更新中,Android Studio改變了其使用者介面。 本指南將向你展示在“Ladybug”中的*新介面*的步驟。 如果你仍在使用舊的介面,你可能需要先根據[這些指示](NewUI)將Android Studio切換到新的介面。 -``` - -Android Studio 版本非常重要。 請參閱 [上面的指示](#Building-APK-recommended-specification-of-computer-for-building-apk-file) 以選擇適合的 Android Studio 版本。 - -下載[當前版本的Android Studio](https://developer.android.com/studio)或從[**檔案庫**](https://developer.android.com/studio/archive)下載較舊版本,並接受下載協議。 - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -下載完成後,啟動下載的應用程序以在你的計算機上安裝它。 你可能需要接受/確認一些有關從 Windows 下載的應用程序的警告! - -透過點擊「下一步」來安裝 Android Studio,如以下屏幕截圖所示。 你**不**需要更改任何設定! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -如果您希望節省硬碟空間,可以取消勾選 Android 虛擬設備:這不適用於建立 **AAPS**。 - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -現在點擊「安裝」: - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -完成後,點擊「下一步」 - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -在最後一步,點擊「完成」來首次啟動 Android Studio。 - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -系統將詢問你是否希望幫助改善 Android Studio。 根據自己的喜好選擇選項,這不會影響接下來的步驟。 - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -歡迎畫面歡迎你安裝 Android Studio。 按「下一步」。 - -![歡迎](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -選擇「標準」作為安裝類型。 - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -通過再次點擊「下一步」來確認設定。 - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -現在你需要接受許可協議。 左側有兩個區域(1 + 3),你需要逐一選擇並在右側各選擇「接受」(2 + 4)。 - -然後可以點擊「完成」(5) 按鈕。 - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -某些 Android 套件現在將被下載和安裝。 請耐心等待。 - -當這一切完成後,你將看到以下畫面,可以再次選擇「完成」。 - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -你現在將看到 Android Studio 的歡迎畫面。 - -![歡迎來到Android Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### 下載AAPS程式碼 - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -第一次下載**AAPS**時,Android Studio將透過網際網路連接到Github網站以下載**AAPS**的原始碼。 這應該會花大約1分鐘的時間。 - -然後,Android Studio將使用**Gradle**(一種開發Android應用的工具)來識別在你的電腦上構建這些項目所需的其他元件。 -``` - -在Android Studio的歡迎畫面上,檢查左側的“**專案**” (1)是否高亮顯示。 - -點一下右側的"**Clone Repository**" (2) - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -我們現在將告訴Android Studio從哪裡獲取程式碼: - -![從版本控制獲取](../images/Building-the-App/033_CloneGit.png) - -* “倉庫URL”應該在左側(1)預設選擇。 -* “Git”應作為版本控制預設選擇(2)。 -* 現在複製這個URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - 然後將其粘貼到URL文本框中(3)。 - -* 檢查用於儲存複製程式碼的(預設)目錄是否已經存在於您的電腦上 (4)。 你可以將其更改為某個目錄,但請記得你放置的位置! -* 現在點擊“複製”按鈕(5)。 - -```{admonition} INFORMATION -:class: information -請記下該目錄。 它是你的原始碼儲存的位置! -``` - -你現在將看到一個螢幕,告訴你倉庫正在被複製: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -在某個時候,Android Studio 將關閉並重新啟動。 系統可能會詢問你是否希望信任該專案。 點擊“信任專案”: - - ![信任專案](../images/Building-the-App/035_TrustProject.png) - - -僅限Windows用戶:如果你的防火牆要求許可,請授予存取權限: - - ![防火牆權限java](../images/AndroidStudio361_18.png) - -倉庫成功複製後,Android Studio將打開複製的專案。 - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio最近改變了其UI。 新的Android Studio安裝預設使用新介面! - -只有當你的Android Studio外觀不同時,你才可能需要切換到新介面: -點擊左上角的漢堡選單,然後選擇**設定**(或Apple電腦上的**偏好設定**)。 -在**外觀與行為**中,前往**新介面**並勾選**啟用新介面**。 然後重新啟動 Android Studio 開始使用它。 - -如果你沒有找到選項 **新界面**,別擔心:你已經在使用它了! -``` - - -當 Android Studio 開啟時,請耐心等待(這可能需要幾分鐘),尤其是,**請不要**按照彈出視窗中的建議更新專案。 - -Android Studio 將自動開始進行 "Gradle 專案同步",這將需要幾分鐘才能完成。 你可以看到它(仍然)在運行: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio 可能會建議更新 gradle 系統。 **切勿更新 gradle!** 這會導致困難。 -``` - -僅限於 Windows 電腦:你可能會收到通知發出 Windows 防護程式正在運行:點擊 **自動** 並確認,這將使建置速度更快! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -你可以讓 Gradle 同步運行,同時已經可以追蹤下一步。 - -(Building-APK-set-git-path-in-preferences)= -### 在 Android Studio 偏好設定中設置 Git 路徑 - -現在我們要告訴 Android Studio 在哪裡找到你之前安裝的 Git,[稍早](#install-git-if-you-dont-have-it)提到過。 - -* 僅限於 Windows 使用者:在 [安裝 Git](#install-git-if-you-dont-have-it) 後,請確保重新啟動你的電腦。 如果尚未重開電腦,請現在重啟並重新打開 Android Studio - -在**Android Studio** 的左上角,打開漢堡選單並導航到**檔案** > **設定**(在 Windows 上)或**Android Studio** > **偏好設定**(在 Mac 上)。 這將打開以下窗口,點擊展開名為**版本控制**(1)的下拉選單,然後選擇**Git** - -![版本控制_Git](../images/Building-the-App/038_SettingsGit.png) - -檢查**Android Studio** 是否能夠自動找到正確的**Git 可執行檔的路徑**,透過點擊 "測試" 按鈕(1): - -![Git 可執行檔](../images/Building-the-App/039_GitTest.png) - - -如果自動設置成功,你的當前**Git** 版本將顯示在路徑旁邊。 - - ![Git_版本顯示](../images/Building-the-App/039_GitTestSuccess.png) - - -如果你發現**git.exe** 無法自動找到,或者點擊 "測試" 出現錯誤(1),你可以選擇 -* 手動輸入你之前[儲存的路徑](#BuildingAaps-steps-for-installing-git),或 -* 點擊資料夾圖示(1),手動導航至**git.exe** 安裝的目錄[上面](#BuildingAaps-steps-for-installing-git) -* 用**測試**按鈕驗證你的設定! - - ![未找到 Git](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### 建置AAPS“簽章”APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android 要求每個應用程式必須被 _簽署_,以確保它只能從同一位信任來源後續更新。 有關此主題的更多資訊,請遵循 [此連結](https://developer.android.com/studio/publish/app-signing.html#generate-key)。 - -對我們的用途而言,這意味著我們生成一個簽名或 "金鑰庫" 檔案,並在建置 **AAPS** 應用程式時使用它。 -``` - - -**重要:在進行下一步之前,請確保 gradle 同步已成功完成!** - - -點擊左上角的漢堡選單以打開選單欄。 選擇**建置**(1),然後選擇**生成簽署的應用包 / APK**(2) - -![建置 apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -選擇“APK”而不是“Android App Bundle”,然後點擊“下一步”: - -![APK 而不是包](../images/Building-the-App/041_APK.png) - -在下一個螢幕上,確保“模組”設置為“AAPS.app”(1)。 - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -如果你想為你的手錶建立 APK,你現在需要選擇 AAPS.wear! -``` -![創建金鑰庫](../images/Building-the-App/042_CreateNewKey.png) - -點擊“建立新...” (2) 開始建立你的密鑰庫。 - -```{admonition} INFORMATION! -:class: information -你只需創建一次金鑰庫。 -如果你之前已經建置過 AAPS,請勿創建新的金鑰庫,而是選擇現有的金鑰庫並輸入其密碼! -``` - -**_注意:_**金鑰庫是存儲應用程式簽名資訊的檔案。 他是加密的,並且訊息透過密碼進行保護。 - -![創建金鑰庫](../images/Building-the-App/043_Keystore.png) - -* 點擊 "文件夾" 符號(1)以選擇你電腦上金鑰庫的路徑。 - - 請**不要**使用你儲存原始碼的目錄,而使用一些你也會轉移到新電腦的目錄。 - -```{admonition} WARNING! -:class: warning -請務必記下一個金鑰庫的位置。 當你建置下一個 AndroidAPS 更新時,將需要它! -``` - -* 現在選擇一個簡單的密碼(並記下來),在密碼框中輸入它(2),並確認(2)。 - - 密鑰庫和密鑰的密碼不必過於複雜。 如果將來遺失密碼,請參見[解決遺失金鑰庫的問題](#troubleshooting_androidstudio-lost-keystore). - -* 密鑰的預設別名(3)為“key0”,保持不變。 - -* 你現在需要為你的密鑰設置密碼。 為了簡單起見,你可以使用與上面密鑰庫相同的密碼。 輸入一個密碼(4)並確認之。 - -```{admonition} WARNING! -:class: warning -請記下這些密碼! 當你建置下一個 AAPS 更新時,將需要這些密碼! -``` - -* 預設有效期為 25 年,可以保持原樣。 - -* 輸入你的名字和姓氏(5)。 不需要添加其他任何資訊,但你可以自由地補充(6-7)。 - -* 點擊“確定”(8)繼續: - - -在**生成簽署的應用包或 APK**頁面上,現在將顯示金鑰庫的路徑。 現在重新輸入金鑰庫密碼(1)和密鑰密碼(2),並勾選方框(3)以記住密碼,這樣你在下次建構 APK 時(即升級到新的 AAPS 版本時)就不需要再次輸入。 點擊“下一步”(4): - -![記住密碼](../images/Building-the-App/044_RememberPwd.png) - - -在下一個螢幕上,選擇建構變體 "fullRelease"(2),然後點擊 "建立"(3)。 你應該記住在(1)顯示的目錄,因為稍後你會在那裡找到生成的 APK 檔案! - - ![選擇建置變體](../images/Building-the-App/045_BuildPath.png) - -Android Studio 現在將建置**AAPS**的 APK。 它會在右下角顯示 "Gradle 建構正在運行"(2)。 這個過程需要一些時間,根據你的電腦和網路連線,請**耐心等待!** 如果你想查看建置進度,請點擊在 Android Studio 底部的小錘子 "建置"(1): - -![Gradle 正在運行](../images/Building-the-App/046_BuildRunning.png) - -現在你可以查看建置進度: - -![Android_Studio_建置中](../images/Building-the-App/047_BuildDetails.png) - -Android Studio在建置完成後將顯示“BUILD SUCCESSFUL”的訊息。 你可能會看到一個彈出通知,你可以點擊選擇“查找”。 如果你錯過了這個訊息,請點擊通知圖示(1),然後在螢幕底部點擊**定位**(2)以顯示通知: - -![建置完成](../images/Building-the-App/049_ReopenNotification.png) - -**_如果建置不成功,請參考[Android Studio 問題排除部分](../GettingHelp/TroubleshootingAndroidStudio)。_** - -在通知欄中,點擊藍色連結“定位”: - -![定位建置](../images/Building-the-App/048_BuildFinished.png) 你的檔案管理器將開啟並顯示你剛剛建置的 apk 檔案。 - - ![檔案位置 apk](../images/Building-the-App/050_LocateAPK.png) - -恭喜! 現在你已經建置了**AAPS** apk 檔案,接下來你將把此檔案傳送到你的智慧型手機。 - -```{tip} -如果你認為未來可能想使用 Android Wear 智慧型手錶,現在正是建立 AAPS Wear apk 的最佳時機,以確保它與你的 AAPS apk 同步。 -``` - -移動到[傳送和安裝**AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md)的下一個階段。 +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From ecba0d8a749d1a9ae9e246e32fc82182405dbc63 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:58:04 +0200 Subject: [PATCH 016/167] New translations buildingaaps.md (Portuguese, Brazilian) --- docs/CROWDIN/pb/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/pb/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/pb/SettingUpAaps/BuildingAaps.md index f3d3f5fb5f5c..aa95e0cf7c3a 100644 --- a/docs/CROWDIN/pb/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/pb/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Install Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 550cacde4045096d2b10a92d11a86acda907af9a Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:58:48 +0200 Subject: [PATCH 017/167] New translations buildingaaps.md (Romanian) --- docs/CROWDIN/ro/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/ro/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/ro/SettingUpAaps/BuildingAaps.md index f3d3f5fb5f5c..aa95e0cf7c3a 100644 --- a/docs/CROWDIN/ro/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/ro/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ See [FAQ page](../UsefulLinks/FAQ.md) for details. +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer and software specifications for building AAPS +### Build with a browser -* A specific **[Android Studio](https://developer.android.com/studio/)** version may be required to build the apk. See table below : +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS Version | Preferred
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ---------------------------------------------------- | ------------------------------------------------------ | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | up to Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | up to Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | up to Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | 8.11.1 | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -The "preferred version" is packaged with the appropriate JVM version. The preferred version is also the minimal version you can use to build **AAPS**. You will **NOT** be able to build on a version older than the "preferred" one. If using a different version, you may encounter issues related to JVM version. See the [Troubleshooting Android Studio](#troubleshooting_androidstudio-uncommitted-changes) page to help solve these issues. If your current Android Studio version is not listed in the table, you must update it first. +---- -The Gradle version is linked to the source code, you will always get the correct Gradle version when downloading / updating the source code. It is mentioned here for reference only, you don't have to take action on it. - -* [Windows 32-bit systems](#troubleshooting_androidstudio-unable-to-start-daemon-process) are not supported by Android Studio. Please keep in mind that both **64 bit CPU and 64 bit OS are mandatory condition.** If your system DOES NOT meet this condition, you have to change affected hardware or software or the whole system. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OS (Only 64 bit)Windows 8 or higherMac OS 10.14 or higherAny Linux supports Gnome, KDE, or Unity DE;  GNU C Library 2.31 or later

CPU (Only 64 bit)

x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD CPU with support for a
Windows Hypervisor
ARM-based chips, or 2nd generation Intel Core or newer with support for
Hypervisor.Framework
x86_64 CPU architecture; 2nd generation Intel Core or newer, or AMD processor with support for AMD Virtualization (AMD-V) and SSSE3

RAM

16GB or more

Disk

At least 30GB free space. SSD is recommended.

Resolution

1280 x 800 Minimum

Internet

Broadband

- -**It is strongly recommended (not mandatory) to use SSD (Solid State Disk) instead of HDD (Hard Disk Drive) because it will take less time when you are building the AAPS apk file.** You can still use a HDD when you are building the **AAPS** apk file. If you do, the building process may take a long time to complete, but once it has started, you can leave it running unattended. - -## Help and support during the building process - -If you run into difficulties in the process of building the **AAPS** app, there is a dedicated [**troubleshooting Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) section, please consult that first. - -If you think something in the building instructions is wrong, missing or confusing, or you are still struggling, please reach out to other **AAPS** users group on [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) or [Discord](https://discord.gg/4fQUWHZ4Mw). If you want to change something yourself (updating screenshots _etc_), please submit a [pull request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Step-by-step guide to building the AAPS app - -```{admonition} WARNING -:class: warning -If you have built AAPS before, you don't need to take all the following steps again. -Please jump directly to the [update guide](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -In this guide you will find _example_ screenshots of building of **AAPS** apk file. Because **Android Studio** - the software which we use to build the **AAPS** apk - is regularly updated, these screenshots may not be identical to your installation, but they should still be possible to follow. - -Since **Android Studio** runs on Windows, Mac OS X and Linux platforms, there might be also be minor differences in the steps for the different platforms. - -(install-git-if-you-dont-have-it)= -### Install Git - -```{admonition} Why Git? -:class: dropdown - -Git is known as a “_Versioning Control System_” (VCS).\ -Git is a program that allows you to track changes in code and to collaborate with others. You will use Git to make a copy of the **AAPS** source code from the GitHub website to your local computer. Then, you will use Git on your computer to build the **AAPS** application (apk). -``` - -(BuildingAaps-steps-for-installing-git)= -#### Steps for Installing Git - -1. Check that you don’t already have **Git** installed. You can do this by typing “git” in the Windows search bar – if you see **“Git bash”** or some other form of Git, it is already installed and you can go straight to [installing Android Studio](#install-android-studio): - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. If you don’t have Git installed, download and install the latest version for your system from the "Download" section on [**here**](https://git-scm.com/downloads). Any recent Git version should work, select the correct version according to your system, either Mac, Windows and Linux. - -**Note for Mac users:** the Git webpage will also guide you to install an additional program called "homebrew" to aid the installation. If you install Git via homebrew, there is no need to change any preferences. - -(Make_a_note_of_Git_path)= - -* During the installation, when you are asked to "select destination location" make a note of _where_ Git is being installed (the "**installation path**") you will need to check it in the next step. It will be something similar to "C:\Program Files\Git\cmd\git.exe" - -* As you proceed through several steps of the Git installation, just accept all the default options. - -* After the install, if you forgot to make a note of the where Git was installed, you can find it as follows: type "git" into the PC search bar, right click on "Git bash", select "open file location" hover over the "Git bash" icon with your mouse, which will then reveal where it is installed. - -* Reboot your computer before the next step. - -(Building-APK-install-android-studio)= -### Install Android Studio - -- **You have to be online all of the time during the following steps, as Android Studio downloads several updates** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio is a program which runs on your computer. It allows you to download source code from the internet (using Git) and build smartphone (and smartwatch) apps. You cannot "break" a current, looping version of **AAPS** which you might have running on a smartphone by building a new or updated app on your PC with Android Studio, these are totally separate processes. -``` - -One of the most important things when installing Android Studio is **be patient!** During installation and setup, Android Studio is downloading a lot of stuff which will take time. - -```{admonition} Different UI -:class: warning -Import note: Android Studio changed its UI during the last releases. This guide will show you the steps with the *new UI* in "Ladybug". If you still use the older UI, you might want to change Android Studio to the new UI first following [these instructions](NewUI). -``` - -The Android studio version is very important. See the [instructions above](#Building-APK-recommended-specification-of-computer-for-building-apk-file) to pick the proper version of Android Studio. - -Download the [current version of Android Studio](https://developer.android.com/studio) or an older version from the [**Archives**](https://developer.android.com/studio/archive) and accept the download agreements. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Once the download is finished, start the downloaded application to install it on your computer. You might need to accept/confirm some warnings about downloaded apps from Windows! - -Install Android Studio by clicking "Next", as shown in the following screenshots. You do **not** need to change any settings! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -If you want to save hard disk space, your you can uncheck Android Virtual Device: it is not used for building **AAPS**. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Now click on "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Once it's completed, press "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -In the last step, click on "Finished" to start Android Studio for the first time. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -You will be asked if you want to help improve Android Studio. Choose the option to your liking, it won't make any difference for the following steps. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -The welcome screen greets you to the installation of Android Studio. Press "Next". - -![Welcome](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Select "Standard" as installation type. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Verify the settings by clicking "Next" again. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Now you need to accept the license agreements. You have two sections (1 + 3) on the left side which you have to select one after the other and each select "Accept" (2 + 4) on the right side. - -Then the "Finish" (5) button can be clicked. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Some Android packages will now be downloaded and installed. Be patient and wait. - -When it's finished, you will find the following screen where you can select "Finish" again. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -You will now see the Welcome screen of Android Studio. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### Download the AAPS code - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -The first time **AAPS** is downloaded, Android Studio will connect over the internet to the Github website to download the source code for **AAPS**. This should take about 1 minute. - -Android Studio will then use **Gradle** (a development tool for Android apps) to identify other components needed to build these items on your computer. -``` - -On the Android Studio Welcome screen, check that "**Projects**" (1) is highlighted on the left. - -Then click "**Clone Repository**" (2) on the right: - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -We will now tell Android Studio where to get the code from: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository URL" should be selected (by default) on the left (1). -* "Git" should be selected (by default) as version control (2). -* Now copy this URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - and paste it into the URL textbox (3). - -* Check the (default) directory for saving the cloned code does not already exist on your computer (4). You can change it to some directory, but please remember where you stored it! -* Now click the button "Clone" (5). - -```{admonition} INFORMATION -:class: information -Make a note of the directory. It is where your sourcecode is stored! -``` - -You will now see a screen telling you that the repository is being cloned: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -At some point, Android Studio will close and start again. You may be asked whether you want to trust the project. Click on "Trust project": - - ![Trust project](../images/Building-the-App/035_TrustProject.png) - - -Only for Windows users: If your firewall asks for permission, grant access: - - ![Firewall permission java](../images/AndroidStudio361_18.png) - -After the repository is cloned successfully, Android Studio will open the cloned project. - -(NewUI)= -```{admonition} New UI -:class: information -Android Studio changed its UI recently. New installations of Android Studio use the new UI by default! - -Only if your Android Studio looks different, you might need to switch to the new UI: -Click on the hamburger menu on the top left, then select **Settings** (or **Preferences** on Apple computers). -In **Appearance & Behaviour**, go to **New UI** and tick **Enable new UI**. Then restart Android Studio to start using it. - -If you don't find the option **New UI** don't worry: you are already using it! -``` - - -When Android Studio opened, wait patiently (this may take a few minutes), and particularly, **do not** update the project as suggested in the pop-up. - -Android Studio will start a "Gradle project sync" automatically, which will take a couple of minutes to finish. You can see it (still) running: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio might recommend updating the gradle system. **Never update gradle!** This will lead to difficulties. -``` - -Only on windows computers: You might get a notification about windows defender running: Click on **Automatically** and confirm, it will make the build run faster! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -You can leave the gradle sync running and follow the next steps already. - -(Building-APK-set-git-path-in-preferences)= -### Set Git path in Android Studio preferences - -Now we will tell Android studio where to find Git, which you installed [earlier](#install-git-if-you-dont-have-it). - -* Windows users only: Make sure you have restarted your computer after [installing Git](#install-git-if-you-dont-have-it). If not, restart now and re-open Android Studio - -In the top left corner of **Android Studio**, open the hamburger menu and navigate to **File** > **Settings** (on Windows) or **Android Studio** > **Preferences** (on Mac). This opens the following window, click to expand the dropdown called **Version Control** (1) and select **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Check if **Android Studio** can automatically locate the correct **Path to Git executable** automatically by clicking the button "Test" (1): - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -If the automatic setting is successful, your current version of **Git** will be displayed next to the path. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -If you find that **git.exe** is not found automatically, or that clicking "Test" results in an error (1), you can either -* manually enter the path which you saved [earlier](#BuildingAaps-steps-for-installing-git), or -* click on the folder icon (1) and manually navigating to the directory where **git.exe** was installed [earlier](#BuildingAaps-steps-for-installing-git) -* Verify your settings with the **Test** button! - - ![Git not found](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Build the AAPS "signed" APK - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android requires each app to be _signed_, to ensure that it can only be updated later from the same trusted source that released the original app. For more information on this topic, follow [this link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -For our purposes, this just means that we generate a signing or "keystore" file and use it when we build the **AAPS** app. -``` - - -**Important: Make sure the gradle sync is finished successfully before proceeding!** - - -Click the hamburger menu on the top left to open the menu bar. Select **Build** (1), then select **Generate Signed App Bundle / APK** (2) - -![Build apk](../images/Building-the-App/040_GenerateSignedAPK.png) - -Select "APK" instead of "Android App Bundle" and click "Next": - -![APK instead of bundle](../images/Building-the-App/041_APK.png) - -In the next screen, make sure that "Module" is set to "AAPS.app" (1). - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -If you want to create the apk for your watch, you now need to select AAPS.wear! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Click "Create new..." (2) to start creating your key store. - -```{admonition} INFORMATION! -:class: information -You will only need to create the keystore once. -If you have build AAPS before, do NOT create a new keystore but select your existing one and enter its passwords! -``` - -**_Note:_** The key store is a file in which the information for signing the app is stored. It is encrypted, and the information is secured with passwords. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Click the "folder" symbol (1) to select a path on your computer for your key store. - - Do **not** use the directory where you stored your sourcecode but some directory that you would also transfer to a new computer. - -```{admonition} WARNING! -:class: warning -Make sure to note down for yourself where your keystore is stored. You will need it when you build the next AndroidAPS update! -``` - -* Now choose a simple password (and make a note of it), enter it in the password box (2), and confirm it (2). - - The passwords for key store and key do not have to be sophisticated. If you lose your password in the future, see [troubleshooting for lost key store](#troubleshooting_androidstudio-lost-keystore). - -* The default alias (3) for your key is "key0", leave this unchanged. - -* You now need a password for your key. To keep it simple, if you want, you can use the same password you used for your keystore, above. Enter a password (4) and confirm it. - -```{admonition} WARNING! -:class: warning -Note down these passwords! You will need them when you build the next AAPS update! -``` - -* The validity is 25 years by default, leave it as it is. - -* Enter your first and last name (5). No other information needs to be added but you are free to do (6-7). - -* Click "OK" (8) to continue: - - -On the **Generate signed App Bundle or APK** page, the path to your keystore will now be displayed. Now re-enter the Key Store password (1) and Key password (2), and tick the box (3) to remember passwords, so you don't have to enter them again next time you build the apk (i.e. when updating to a new AAPS version). Click "Next" (4): - -![Remember passwords](../images/Building-the-App/044_RememberPwd.png) - - -On the next screen, select build variant "fullRelease" (2) and click "Create" (3). You should remember the directory displayed at (1), as later you will find your built apk file there! - - ![Select build variant](../images/Building-the-App/045_BuildPath.png) - -Android Studio will now build the **AAPS** apk. It will show "Gradle Build running" (2) at the bottom right. The process takes some time, depending on your computer and internet connection, so **be patient!** If you want to watch the progress of the build, click on the small hammer "build" (1) at the bottom of Android Studio: - -![Gradle Running](../images/Building-the-App/046_BuildRunning.png) - -Now you can watch the building progress: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Android Studio will display the information "BUILD SUCCESSFUL" after build is finished. You may see a popup notification which you can click to select "locate". If you miss this, click on the notification icon (1) and then on **locate** (2) at the very bottom of the screen to bring up the Notifications: - -![Build finished](../images/Building-the-App/049_ReopenNotification.png) - -**_If the build was not successful, refer to the [Android Studio Troubleshooting section](../GettingHelp/TroubleshootingAndroidStudio)._** - -In the Notifications box, click on the blue link "locate": - -![Locate build](../images/Building-the-App/048_BuildFinished.png) Your file manager will open and show you the build apk file that you have just built. - - ![File location apk](../images/Building-the-App/050_LocateAPK.png) - -Congratulations! Now you have built the **AAPS** apk file, you will be transferring this file to your smartphone in the next section of the docs. - -```{tip} -If you think you might want to use an Android Wear smartwatch in the future, this is the best time to build the AAPS Wear apk to be sure it will be synchronized with your AAPS apk. -``` - -Move to the next stage of [Transferring and Installing **AAPS**](../SettingUpAaps/TransferringAndInstallingAaps.md). +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From a6c9827d8de15da9b9aba46018ac8da9cc9358c7 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:58:49 +0200 Subject: [PATCH 018/167] New translations browserbuild.md (Romanian) --- docs/CROWDIN/ro/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/ro/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/ro/SettingUpAaps/BrowserBuild.md index bb629e0992df..a3ad592f33dc 100644 --- a/docs/CROWDIN/ro/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/ro/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From e8ecf58d89faf9b9652534219040cbd57fc653ac Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:58:58 +0200 Subject: [PATCH 019/167] New translations browserbuild.md (French) --- docs/CROWDIN/fr/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/fr/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/fr/SettingUpAaps/BrowserBuild.md index ec279cef8e2e..ef8b06c33126 100644 --- a/docs/CROWDIN/fr/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/fr/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From 9ba5472c6e1faed29cfd2cefb69a394a60799df8 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:59:17 +0200 Subject: [PATCH 020/167] New translations browserbuild.md (Spanish) --- docs/CROWDIN/es/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/es/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/es/SettingUpAaps/BrowserBuild.md index dd24a4a96c46..97a47bdd8b27 100644 --- a/docs/CROWDIN/es/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/es/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From f4b2e592da846e927b02798bddee5c94e1809bc8 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:59:24 +0200 Subject: [PATCH 021/167] New translations browserbuild.md (Czech) --- docs/CROWDIN/cs/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/cs/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/cs/SettingUpAaps/BrowserBuild.md index ca40a2de2ac9..673a609a65c5 100644 --- a/docs/CROWDIN/cs/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/cs/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From fdb8faae80af45de1fbe550b7e5ed1cf8cda990d Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:59:31 +0200 Subject: [PATCH 022/167] New translations buildingaaps.md (German) --- docs/CROWDIN/de/SettingUpAaps/BuildingAaps.md | 417 +----------------- 1 file changed, 9 insertions(+), 408 deletions(-) diff --git a/docs/CROWDIN/de/SettingUpAaps/BuildingAaps.md b/docs/CROWDIN/de/SettingUpAaps/BuildingAaps.md index 8db95ad848b5..65c077f7be97 100644 --- a/docs/CROWDIN/de/SettingUpAaps/BuildingAaps.md +++ b/docs/CROWDIN/de/SettingUpAaps/BuildingAaps.md @@ -6,420 +6,21 @@ Zu den Details schaue bitte auf die [FAQ-Seite](../UsefulLinks/FAQ.md). +--- +Two methods are available to build the AAPS app: -(Building-APK-recommended-specification-of-computer-for-building-apk-file)= -## Computer- und Software-Spezifikationen für das "Bauen" von AAPS +### Build with a browser -* Um die APK zu erstellen ist möglicherweise eine bestimmte **[Android Studio](https://developer.android.com/studio/)**-Version erforderlich. Siehe Tabelle unten: +You can build the app with your smartphone using GitHub actions, and save it in your Google Drive. -| AAPS-Version | Empfohlene
Android Studio
Version | Alternative
Android Studio
Version | Gradle | JVM | -| ----------------------- | ------------------------------------------------------- | -------------------------------------------------------- | ------ |:--- | -| 2.6.2 | 3.6.1 | | 5.6.4 | 11 | -| 2.8.2.1 | 4.1.1 | | 6.1.1 | 13 | -| [3.1.0.3](#version3100) | 2020.3.1 | bis zu Narwhal | 7.3.3 | 17 | -| [3.2.0.4](#version3204) | Hedgehog (2023.1.1) | bis zu Narwhal | 8.2 | 17 | -| [3.3.1.3](#version3300) | Ladybug Feature Drop (2024.2.2) | bis zu Narwhal | 8.10 | 21 | -| [3.3.2](#version3300) | Meerkat (2024.3.1) | Narwhal | | 21 | -| [3.3.2.1](#version3321) | Narwhal (2025.1.2) | | 8.13 | 21 | +**[Follow these instructions.](./BrowserBuild.md)** -Die „empfohlene Version“ enthält im Paket bereits die entsprechende JVM-Version. Die empfohlene Version ist gleichzeitig auch die Mindestversion, die Du zum Erstellen von **AAPS** nutzen kannst. Mit einer älteren Version als der, die unter „empfohlen“ aufgeführt ist, wirst Du **NICHT** in der Lage sein, AAPS zu erstellen. Solltest Du eine andere Version verwenden, kann es aufgrund der JVM-Version zu Problemen kommen. Schaue auf den Seiten zur [Fehlerbehebung für Android Studio](#troubleshooting_androidstudio-uncommitted-changes) nach, um diese Probleme zu lösen. Wenn Deine aktuelle Android Studio Version nicht in der Tabelle aufgeführt ist, musst Du sie zuerst aktualisieren. +---- -Die Gradle-Version ist mit dem Quellcode verknüpft. Wenn Du den Quellcode herunterlädst oder aktualisierst, bekommst Du automatisch die richtige Gradle-Version. Das wird hier rein zu Deiner Information erwähnt. Du brauchst nichts machen. - -* Android Studio unterstützt keine [Windows 32-Bit-Systeme](#troubleshooting_androidstudio-unable-to-start-daemon-process). Bitte beachte, dass sowohl eine **64-Bit-CPU als auch ein 64-Bit-Betriebssystem zwingend erforderlich sind**. Wenn Dein System diese Bedingung nicht erfüllt, musst Du die entsprechende Hardware, Software oder das ganze System ersetzen. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Betriebssystem (nur 64 Bit)Windows 8 oder höherMac OS 10.14 oder höherJedes Linux unterstützt Gnome, KDE oder Unity DE;  GNU C Library 2.31 oder höher

CPU (nur 64 Bit)

x86_64-CPU-Architektur Intel Core der 2. Generation oder neuer oder AMD-CPU mit Unterstützung für
Windows Hypervisor-Framework
ARM-basierte Chips oder Intel Core der 2. Generation oder neuer mit Unterstützung für
Hypervisor-Framework
x86_64 CPU Architektur; Intel Core der zweiten Generation oder neuer, alternativ AMD Prozessor mit Unterstützung für AMD Virtualization (AMD-V) und SSSE3

RAM

16GB or more

Festplatte

Mind. 30 GB freier Speicherplatz. SSD wird empfohlen.

Bildschirmauflösung

min. 1280 x 800

Internet

Breitband

- -**Es wird dringend empfohlen eine SSD (Solid State Disk) anstelle einer HDD (Hard Disk Drive) zu verwenden, da damit weniger Zeit benötigt wird, um die AAPS-apk-Datei zu erstellen**. Es ist aber auch möglich eine Festplatte (HDD) zum Erstellen der **AAPS**-apk-Datei zu nutzen. Wenn du dies tust, kann es lange dauern, bis der Bau der App abgeschlossen ist, aber sobald er begonnen hat, kann man ihn unbeaufsichtigt lassen. - -## Hilfe und Unterstützung während des Erstellungsprozesses - -Solltest Du Probleme beim Erstellen der **AAPS**-App haben, kannst Du im Abschnitt [**Fehlerbehebung für Android Studio**](../GettingHelp/TroubleshootingAndroidStudio) einiges an Hilfestellung finden. - -Wenn Du den Eindruck hast, dass in der Anleitung Schritte falsch, fehlend oder missverständlich sind, oder Du trotzdem noch Probleme hast, wende Dich über [Facebook](https://www.facebook.com/groups/AndroidAPSUsers) oder [Discord](https://discord.gg/4fQUWHZ4Mw) an andere **AAPS**-Nutzende. Wenn Du selbst etwas ändern möchtest (z.B. Screenshots aktualisieren _etc_), erstelle einen entsprechenden [Pull-Request (PR)](../SupportingAaps/HowToEditTheDocs.md). - -## Schritt-für-Schritt Anleitung zum Erstellen der AAPS-App - -```{admonition} WARNING -:class: warnung -Wenn Du AAPS in der Vergangenheit bereits einmal erstellt hast, musst Du nicht alle der folgenden Schritte noch einmal durchlaufen. -Bitte springe direkt zur [Update-Anleitung](../Maintenance/UpdateToNewVersion.md)! -``` - -```{contents} The overall steps for building the **AAPS** apk file -:depth: 1 -:local: true -``` - -Diese Anleitung enthält _beispielhafte_ Screenshots zum Erstellen der **AAPS**-APK-Datei. Weil **Android Studio** - die Software, die wir zum Erstellen der **AAPS**-APK verwenden - regelmäßig aktualisiert wird, sind diese Screenshots vielleicht nicht mit Deiner Installation identisch. Sie sollten trotzdem ausreichen durch den Prozess zu kommen. - -Da **Android Studio** auf Windows, Mac OS X und Linux Plattformen läuft, kann es auch kleinere Unterschiede in den Schritten zwischen den verschiedenen Plattformen geben. - -(install-git-if-you-dont-have-it)= -### Git installieren - -```{admonition} Why Git? -:class: dropdown - -Git ist ein „_Versioning Control System_“ (VCS). -Git ist ein Programm, das es Dir erlaubt Änderungen im Code zu verfolgen und mit anderen zusammenzuarbeiten. Du wirst Git dazu nutzen, eine Kopie des **AAPS** Quellcodes von der Github Webseite auf Deinem lokalen Computer zu erstellen. Anschließend wirst Du Git auf Deinem Computer verwenden, um die **AAPS** Anwendung (apk) zu erstellen. -``` - -(BuildingAaps-steps-for-installing-git)= -#### Schritte zur Installation von Git - -1. Überprüfe, ob Du **Git** nicht bereits installiert hast. Du überprüfst es, indem Du „git“ in die Windows-Suchleiste eingibst. Wenn **„Git bash“** oder eine andere Form von Git gefunden wird, ist es bereits installiert und Du kannst direkt zur [Installation von Android Studio](#install-android-studio) weitergehen: - - -![Git_installed](../images/Building-the-App/001_check_git_installed.png) - -2. Sollte Git noch nicht installiert sein, lade die neueste Version für Dein System aus dem „Download“-Bereich [**hier**](https://git-scm.com/downloads) herunter und installiere sie. Jede aktuelle Git-Version sollte funktionieren, wähle die richtige Version nach deinem System, entweder Mac, Windows oder Linux. - -**Hinweis für Mac-Benutzer:** Die Git-Webseite schlägt vor, ein zusätzliches Programm namens "Homebrew" zu installieren, um die Installation zu unterstützen. Wenn Du git über homebrew installierst, musst Du keine Einstellungen ändern. - -(Make_a_note_of_Git_path)= - -* Bei der Installation wirst Du nach einer „destination location“ (einem Zielordner) gefragt werden. Notiere Dir bitte _den Ort_ an dem Git installiert wird (den **Installationspfad**). Du wirst dort im nächsten Schritt etwas überprüfen müssen. Der Installationspfad wird in in etwa so aussehen: "C:\Program Files\Git\cmd\git.exe" - -* Akzeptptiere in den verschiedenen Schritten der Git-Installation die voreingestellten Optionen. - -* Falls Du nach der Installtion vergessen hast (oder Du Dir keinen Notiz gemacht hast), in welchem Verzeichnis Git installiert wurde, kannst Du es auch auf folgendem Weg herausfinden: Gib in der Windows-Suchleiste unten "git"ein, klicke mit der rechten Maustaste auf "Git Bash", "Dateispeicherort öffnen". Damit öffnet sich der Installationspfad. - -* Starte vor dem nächsten Schritt Deinen Computer bitte neu. - -(Building-APK-install-android-studio)= -### Android Studio installieren - -- **Du musst durchgängig online sein, da Android Studio verschiedene Updates herunterladen wird** - -```{admonition} What is Android Studio? -:class: dropdown -Android Studio ist ein Programm, dass auf Deinem Computer läuft. Es erlaubt Dir Quellcode, mit Hilfe von Git, aus dem Internet herunterzuladen und dann daraus Smartphone- (und Smartwatch)-Apps zu erstellen. Die aktuell auf Deinem Smartphone laufende Loop-Version von **AAPS** kannst Du durch das Erstellen einer neuen oder aktualisierten Version auf Deinem PC mit Android Studio nicht beschädigen oder gar zerstören. Es sind zwei voneinander völlig unabhängige Prozesse. -``` - -Einer der wichtigsten Punkte bei der Installation von Android Studio ist: **Geduldig sein!** Während der Installation und Einrichtung lädt Android Studio sehr viele Daten nach und das braucht seine Zeit. - -```{admonition} Different UI -:class: warning -Wichtige Anmerkung: Android Studio hat seine Benutzeroberfläche (UI) seit den letzten Versionen geändert. Diese Anleitung zeigt Dir die Schritte in dem *neuen UI* „Ladybug“. Nutzt Du noch eine ältere Version der Benutzeroberfläche, dann solltest Du Android Studio als Erstes auf das neue Design umstellen. Wie das funktioniert ist [hier beschrieben](NewUI). -``` - -Die Android-Studio-Version ist sehr wichtig. Schaue Dir die [Anleitung oben](#Building-APK-recommended-specification-of-computer-for-building-apk-file) an, um die richtige Android Studio Version auszuwählen. - -Lade Dir die [aktuelle Version des Android Studio](https://developer.android.com/studio) oder eine ältere Version aus dem [**Archiv**](https://developer.android.com/studio/archive) herunter und akzeptiere dabei die Download-Vereinbarungen. - -![DownloadAndroidStudio](../images/Building-the-App/010_DownloadLadybug.png) - -Sobald der Download abgeschlossen ist, starte die heruntergeladene Anwendung, um sie auf Deinem Computer zu installieren. Eventuell musst Du einige Windows-Warnungen zu heruntergeladenen Apps akzeptieren/bestätigen! - -Installiere Android Studio, indem Du, wie in den folgenden Screenshots gezeigt, auf "Weiter" (Next) klickst. Du musst **keine** Einstellungen ändern! - -![Welcome_to_Android_Studio_Setup](../images/Building-the-App/011_InstallLadybug.png) - -Wenn Du Festplattenplatz sparen möchtest, kannst Du Option Android Virtual Device deaktivieren: Diese wird nicht zum Erstellen von **AAPS** genutzt. - -![Choose_components](../images/Building-the-App/012_InstallLadybug.png) - -![Configuration_Settings](../images/Building-the-App/013_InstallLadybug.png) - -Klicke nun auf "Install": - -![Choose_start_Menu_Folder](../images/Building-the-App/014_InstallLadybug.png) - -Sobald die Installation abgeschlossen ist, klicke auf "Next" - -![Installation_Complete](../images/Building-the-App/015_InstallLadybug.png) - -Im letzten Schritt klicke auf "Finished" (dt. Fertig), um Android Studio erstmalig zu starten. - -![Completing_Android_Studio_Setup](../images/Building-the-App/016_InstallLadybug.png) - -Du wirst danach gefragt, ob Du bei der Verbesserung des Android Studios helfen möchtest. Wähle die Option, die Dir am meisten zusagt. Das hat keinen Einfluss auf die Folgeschritte. - -![Help_improve_Android_Studio](../images/Building-the-App/020_ImproveAS.png) - -Der Willkommensbildschirm begrüßt Dich zur Installation des Android Studios. Klicke "Next" (dt. Weiter). - -![Willkommen](../images/Building-the-App/022_WelcomeAndroidStudioInstallation.png) - -Wähle "Standard" als Installationstyp aus. - -![Install_Type](../images/Building-the-App/023_DefaultInstallation.png) - -Überprüfe die Einstellungen, indem Du erneut auf "Next" (dt. Weiter) klickst. - -![Verify_Settings](../images/Building-the-App/024_DefaultInstallation.png) - -Jetzt musst Du die Lizenzvereinbarungen akzeptieren. Du hast auf der linken Seite zwei Abschnitte (1 + 3) die Du einen nach dem anderen auswählst und mit "Accept" (2 + 4) auf der rechten Seite bestätigst. - -Danach kannst Du auf "Finish" (5) klicken. - -![License_Agreement](../images/Building-the-App/025_LicenseAgreement.png) - -Einige der Android-Pakete werden nun heruntergeladen und installiert. Habe Geduld und warte ab. - -Nach dem Abschluss siehst Du den folgenden Bildschirm, auf dem Du erneut "Finish" klickst. - -![Downloading_Components](../images/Building-the-App/026_DownloadFinished.png) - -Du wirst jetzt Android Studios Willkommens-Bildschirm sehen. - -![Welcome_to_Android_Studio](../images/Building-the-App/031_WelcomeAndroidStudio.png) - - -(Building-APK-download-AAPS-code)= -### AAPS-Code herunterladen - -```{admonition} Why can it take a long time to download the AAPS code? -:class: dropdown - -Beim ersten **AAPS**-Download wird Android Studio sich übers Internet mit der Github-Webseite verbinden und von dort den **AAPS**-Quellcode herunterladen. Das sollte etwa eine Minute dauern. - -Android Studio wird dann mit **Gradle** (einem Entwicklungswerkzeug für Android Studio) andere erforderliche Komponenten identifizieren, die zusätzlich installiert werden müssen. -``` - -Überprüfe auf dem Begrüßungsbildschirm von Android Studio, ob „**Projects**“ (1) auf der linken Seite hervorgehoben ist. - -Klick dann rechts auf „**Clone Repository**“ (2): - -![Get_from_VCS](../images/Building-the-App/032_GetVCS.png) - -Wir werden Android Studio nun sagen, wo es den Code herunterladen soll: - -![Get from Version Control](../images/Building-the-App/033_CloneGit.png) - -* "Repository-URL" (voreingestellt) sollte auf der linken Seite ausgewählt werden (1). -* "Git" (standardmäßig) sollte als Version Control ausgewählt werden (2). -* Kopiere nun diese URL: - ``` - https://github.com/nightscout/AndroidAPS.git - ``` - und füge sie in das URL-Textfeld (3) ein. - -* Prüfe, ob das (Standard)-Verzeichnis zum Speichern des geklonten Codes nicht bereits auf Deinem Computer existiert (4). You can change it to some directory, but please remember where you stored it! -* Klicke nun auf "Clone" (5). - -```{admonition} INFORMATION -:class: information -Notiere Dir das Verzeichnis. Das ist die Stelle, an der Dein Quellcode gespeichert ist! -``` - -Du wirst jetzt einen Screen sehen, der Dir sagt, dass das Repository geklont wurde: - -![cloning_repository](../images/Building-the-App/034_CloningProgress.png) - -Irgendwann wird sich Android Studio schließen und neu starten. Du wirst gefragt, ob Du dem Projekt vertrauen willst. Klicke auf "Trust project": - - ![Projekt vertrauen](../images/Building-the-App/035_TrustProject.png) - - -Nur für Windows-Benutzer: Wenn Deine Firewall um Erlaubnis bittet, lasse den Zugriff zu: - - ![Java-Firewall-Berechtigung](../images/AndroidStudio361_18.png) - -Nachdem das Projektarchiv erfolgreich geklont wurde, wird Android Studio das geklonte Projekt öffnen. - -(NewUI)= -```{admonition} New UI -:class: Informationen -Android Studios Benutzeroberfläche wurde kürzlich geändert. Neue Installationen des Android Studio verwenden standardmäßig die neue Benutzeroberfläche! - -Nur wenn Dein Android Studio anders aussieht, musst Du möglicherweise auf das neue UI umschalten: -Klicke oben links auf das Hamburger-Menü und wähle dann **Settings** (oder bei Apple-Rechnern auf **Preferences**). -Im Menü **Appearance & Behaviour**, gehe auf **New UI** und aktiviere dort **Enable new UI**. Starte Android Studio danach neu, damit die Änderungen aktiv werden. - -Wenn Du die Option **New UI** nicht findest, mache Dir keine Sorgen: Du nutzt sie dann schon! -``` - - -Wenn Android Studio wieder gestartet ist, warte ab (das kann einige Minuten dauern), und vor allem, anders als es das Popup vorschlägt, **aktualisiere** das Projekt <0>nicht. - -Android Studio startet automatisch einen "Gradle project sync", der einige Minuten dauert. Du siehst, dass es (noch) läuft: - -![AS_download_dependencies](../images/Building-the-App/036_GradleSyncing.png) - -```{admonition} NEVER UPDATE GRADLE! -:class: warning - -Android Studio wird unter Umständen vorschlagen das Gradle-System zu aktualisieren. **Mache niemals ein Gradle-Update!** Dies wird sonst zu Folgeproblemen führen. -``` - -Nur für Windows-Rechner: Es kann sein, dass Du Benachrichtigungen darüber, dass Windows Defender läuft, erhältst: Klicke auf **Automatically** und bestätige es. Der Build-Prozess wird damit schneller laufen! - -![Windows Defender](../images/Building-the-App/037_WindowsDefender.png) - - -Du kannst den Gradle Sync laufen lassen während Du Dich schon um die folgenden Schritte kümmerst. - -(Building-APK-set-git-path-in-preferences)= -### Pfad zu Git in den Einstellungen von Android Studio festlegen - -Sage Android Studio nun, wo Git, das Du [vorher](#install-git-if-you-dont-have-it) installiert hast, zu finden ist. - -* Nur für Windows-Rechner: Starte Deinen Rechner nach der [Git-Installation](#install-git-if-you-dont-have-it) auf jeden Fall neu. Falls nicht, starte jetzt neu und öffne Android Studio dann erneut - -Öffne in der linken oberen Ecke des **Android Studio** das Hamburger-Menü und navigiere zu **File** > **Settings** (Windows) oder **Android Studio** > **Preferences** (Mac). Damit öffnet sich das folgende Fenster. Klicke auf das Dropdown-Menü **Version Control** (1), um es aufzuklappen und wähle **Git** - -![Version_control_Git](../images/Building-the-App/038_SettingsGit.png) - -Klicke auf den Button „Test“ (1), um zu prüfen, ob **Android Studio** den **Pfad zur ausführbaren Datei git.exe** automatisch ermitteln kann: - -![Git Executable](../images/Building-the-App/039_GitTest.png) - - -Wenn die automatische Erkennung funktioniert, wird die **Git**-Version in der Nähe des Pfads angezeigt. - - ![Git_version_displayed](../images/Building-the-App/039_GitTestSuccess.png) - - -Wenn **git.exe** nicht automatisch gefunden wird oder wenn Du nach dem Klicken auf „Test“ eine Fehlermeldung erhältst (1), kannst Du entweder -* den Pfad, den Du [vorher](#BuildingAaps-steps-for-installing-git) gespeichert hast, manuell eingeben oder -* auf das Ordnersymbol (1) klicken und manuell zum Verzeichnis, in dem **git.exe** [vorher](#BuildingAaps-steps-for-installing-git) installiert wurde, navigieren. -* Überprüfe die Einstellungen mit dem **Test**-Button! - - ![Git wurde nicht gefunden](../images/Building-the-App/039_GitTestError.png) - -(Building-APK-generate-signed-apk)= -### Signierte AAPS APK erstellen - -```{admonition} Why does the AAPS app need to be "signed"? -:class: dropdown - -Android fordert, dass jede App _signiert_ wird, um sicherzustellen, dass sie später nur aus derselben vertrauenswürdigen Quelle, aus der auch die orginale App stammt, aktualisiert werden kann. Für weitere Informationen zu diesem Thema folge [diesem Link](https://developer.android.com/studio/publish/app-signing.html#generate-key). - -Für unsere Zwecke bedeutet das nur, dass wir eine Signatur- oder "Keystore"-Datei generieren und diese beim Erstellen der **AAPS**-App verwenden. -``` - - -**Wichtig: Achte darauf, dass der Gradle Sync erfolgreich abgeschlossen ist, bevor Du weiter machst!** - - -Klicke oben links auf das Hamburger-Menü, um die Menüleiste zu öffnen. Wähle **Build** (1) und dann **Generate Signed App Bundle / APK** (2) aus - -![Apk erstellen](../images/Building-the-App/040_GenerateSignedAPK.png) - -Wähle "APK" anstelle von "Android App Bundle" aus und klicke auf "Next": - -![APK statt Bundle](../images/Building-the-App/041_APK.png) - -In der nächsten Ansicht muss "Modul" auf "AAPS.app" (1) eingestellt sein/werden. - -(Building-APK-wearapk)= -```{admonition} INFORMATION! -:class: information -Wenn Du die APK für Deine Smartwatch erstellen möchtest, musst Du jetzt AAPS.wear auswählen! -``` -![Create_key_store](../images/Building-the-App/042_CreateNewKey.png) - -Klicke auf "Create new..." (2), um mit der Erzeugung Deines Keystore zu beginnen. - -```{admonition} INFORMATION! -:class: information -Der Keystore muss nur einmal erstellt werden. -Wenn Du AAPS schon einmal erstellt (gebaut) hast, erstelle KEINEN neuen Keystore, sondern wähle den bestehenden und gib dessen Passwörter ein! -``` - -**_Hinweis:_** Der Keystore ist eine Datei, in der die Informationen zum Signieren der App gespeichert sind. Die Datei ist verschlüsselt und passwortgeschützt. - -![Create key store](../images/Building-the-App/043_Keystore.png) - -* Klicke auf das Ordner-Symbol, um den Pfad Deines Keystore auf Deinem Computer auszuwählen. - - Nimm **nicht** das Verzeichnis, in dem Du Deinen Quellcode gespeichert hast, sondern ein Verzeichnis, das Du auch auf einen neuen Computer übertragen würdest. - -```{admonition} WARNING! -:class: warning -Schreib Dir auf, wo Dein Keystore gespeichert wird. Du wirst es für Dein nächstes AndroidAPS-Update brauchen! -``` - -* Wähle jetzt ein einfaches Passwort (und notiere es Dir), gib es in das Passwortfeld (2) ein und bestätige es (2). - - Die Passwörter für Keystore und Key müssen nicht sehr anspruchsvoll sein. Solltest Du Dein Passwort verlieren, lies dazu bitte den Abschnitt[Verlorener Keystore](#troubleshooting_androidstudio-lost-keystore). - -* Der Standard-Alias (3) für den Key lautet "key0". Lass ihn unverändert. - -* Jetzt brauchst Du ein Passwort für Deinen Key. Wenn Du es einfach halten willst, nimmst Du das selbe Passwort, das Du auch für Deinen Keystore oben verwendet hast. Gib ein Passwort (4) ein und bestätige es. - -```{admonition} WARNING! -:class: warning -Notiere Dir diese Passwörter! Du wirst sie für Dein nächstes AAPS-Update brauchen! -``` - -* Standardmäßig sind sie 25 Jahre gültig. Lass es unverändert. - -* Gib Deinen Vor- und Nachnamen ein (5). Es müssen keine weiteren Informationen hinzugefügt werden, aber Du kannst es dennoch tun, wenn Du möchtest (6-7). - -* Drücke auf "OK" (8) um fortzufahren: - - -Auf der Seite **Generate signed App Bundle or APK** wird jetzt der Pfad zu Deinem Keystore angezeigt. Gib jetzt erneut das Keystore-Password (1) und das Key-Password (2) ein, und hake die Box "remember password" an (3), sodass Du es beim nächsten Erstellen der APK (z.B. bei der nächsten AAPS-Aktualisierung) nicht noch einmal eingeben brauchst. Klicke auf "Next" (4): - -![Passwörter speichern](../images/Building-the-App/044_RememberPwd.png) - - -Auf der nächsten Seite wähle die Build-Variante "fullRelease" (2) aus und klicke auf "Create" (3). Merke Dir das Verzeichnis, das in (1) angezeigt wird, da dort später die Build-APK-Datei zu finden sein wird! - - ![Build-Variante auswählen](../images/Building-the-App/045_BuildPath.png) - -Android Studio wird jetzt die **AAPS**-APK erstellen. Es wird unten rechts "Gradle Build running" (2) angezeigt. Der Vorgang dauert je nach Computer und Internetverbindung einige Zeit, **Gedulde Dich!** Wenn Du den Fortschritt des „Builds“ mitverfolgen möchtest, klicke auf den kleinen Hammer „Build“ (1) unten im Android Studio: - -![Gradle läuft](../images/Building-the-App/046_BuildRunning.png) - -Jetzt kannst Du den Build-Fortschritt verfolgen: - -![Android_Studio_building](../images/Building-the-App/047_BuildDetails.png) - -Sobald der Build abgeschlossen ist, wird Android Studio "BUILD SUCCESSFUL" anzeigen. Möglicherweise erscheint eine Popup-Benachrichtigung auf der Du "locate" anklicken kannst. Wenn Du diesen Moment verpasst haben solltest, klicke ganz unten auf dem Bildschirm auf das Benachrichtigungs-Symbol (1) und dann auf **locate** (2), um die Benachrichtigungen anzeigen zu lassen: - -![Build abgeschlossen](../images/Building-the-App/049_ReopenNotification.png) - -**_Wenn der „Build“ fehlgeschlagen ist, lies bitte den Abschnitt [Fehlerbehebung für Android Studio](../GettingHelp/TroubleshootingAndroidStudio)._** - -Klicke im Benachrichtigungsfeld auf den blauen Link "locate": - -![Build finden](../images/Building-the-App/048_BuildFinished.png) Der Dateimanager öffnet sich und zeigt Dir die gerade von Dir erzeugte APK-Datei an. - - ![Datei-Speicherort apk](../images/Building-the-App/050_LocateAPK.png) - -Glückwunsch! Du hast die **AAPS**-APK-Datei erstellt. Du wirst diese Datei im nächsten Abschnitt der Dokumentation auf Dein Smartphone übertragen. - -```{tip} -Wenn Du darüber nachdenkst, zukünftig eine Android Wear-Smartwatch zu nutzen, ist jetzt genau der richtige Zeitpunkt die AAPS Wear-APK zu erstellen, um so sicherzustellen, dass diese mit der AAPS-APK zusammenpasst. -``` - -Gehe jetzt zum nächsten Schritt [**AAPS** auf Dein Smartphone übertragen und installieren](../SettingUpAaps/TransferringAndInstallingAaps.md) weiter. +### Build with a computer +You can build the app with your computer using Android Studio. +**[Follow these instructions.](./ComputerBuild.md)** From 61a2d9feab5f60c8c2b7bb6c5580db8546e6e5c0 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:59:32 +0200 Subject: [PATCH 023/167] New translations browserbuild.md (German) --- docs/CROWDIN/de/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/de/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/de/SettingUpAaps/BrowserBuild.md index c6c86f6ea75d..e13ec9ed4e64 100644 --- a/docs/CROWDIN/de/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/de/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From bb13ff96a03c1b78f2bcf52dde12dc4ca86c6c83 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:59:40 +0200 Subject: [PATCH 024/167] New translations browserbuild.md (Greek) --- docs/CROWDIN/el/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/el/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/el/SettingUpAaps/BrowserBuild.md index fb3afabc3172..525d1808b1a2 100644 --- a/docs/CROWDIN/el/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/el/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From e3f0065f74213a71b6fae543f188e5c2685c6ac7 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:59:47 +0200 Subject: [PATCH 025/167] New translations browserbuild.md (Hebrew) --- docs/CROWDIN/he/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/he/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/he/SettingUpAaps/BrowserBuild.md index f9cc9bdb4898..d09d8cdf8a37 100644 --- a/docs/CROWDIN/he/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/he/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From a54ffd2118103773fb46687c656c4a859a856472 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 20:59:55 +0200 Subject: [PATCH 026/167] New translations browserbuild.md (Korean) --- docs/CROWDIN/ko/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/ko/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/ko/SettingUpAaps/BrowserBuild.md index 3a3d7e82c38c..10307201c517 100644 --- a/docs/CROWDIN/ko/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/ko/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From d0bc6689c127e882681648f78086e5d59db019c6 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:03 +0200 Subject: [PATCH 027/167] New translations browserbuild.md (Lithuanian) --- docs/CROWDIN/lt/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/lt/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/lt/SettingUpAaps/BrowserBuild.md index b7bcb13976ba..866a63ad7cee 100644 --- a/docs/CROWDIN/lt/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/lt/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From 62e90cd8935378d49dc5b76455712be274793f8b Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:11 +0200 Subject: [PATCH 028/167] New translations browserbuild.md (Dutch) --- docs/CROWDIN/nl/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/nl/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/nl/SettingUpAaps/BrowserBuild.md index 81a463469c01..190b14ceecbd 100644 --- a/docs/CROWDIN/nl/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/nl/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From 98c69e23072242cbd4e815a3c7ffbce470f0bae8 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:19 +0200 Subject: [PATCH 029/167] New translations browserbuild.md (Polish) --- docs/CROWDIN/pl/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/pl/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/pl/SettingUpAaps/BrowserBuild.md index bb629e0992df..a3ad592f33dc 100644 --- a/docs/CROWDIN/pl/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/pl/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From 9135f0054074e14153970befeef1f98218b735fe Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:27 +0200 Subject: [PATCH 030/167] New translations browserbuild.md (Portuguese) --- docs/CROWDIN/pt/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/pt/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/pt/SettingUpAaps/BrowserBuild.md index 7614893d3cbd..1fc8d4d178ed 100644 --- a/docs/CROWDIN/pt/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/pt/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From ddbcc0a150b0377c13284d7614dcd742159e8cfb Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:34 +0200 Subject: [PATCH 031/167] New translations browserbuild.md (Russian) --- docs/CROWDIN/ru/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/ru/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/ru/SettingUpAaps/BrowserBuild.md index 12292b0c1a21..37284a729d14 100644 --- a/docs/CROWDIN/ru/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/ru/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From 63f5a7dad313f9c6bd3f8f9070b247a54b3153ab Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:42 +0200 Subject: [PATCH 032/167] New translations browserbuild.md (Slovak) --- docs/CROWDIN/sk/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/sk/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/sk/SettingUpAaps/BrowserBuild.md index bb629e0992df..a3ad592f33dc 100644 --- a/docs/CROWDIN/sk/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/sk/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From daaf283a142f7d9da597657d3fd411354ace80ec Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:49 +0200 Subject: [PATCH 033/167] New translations browserbuild.md (Turkish) --- docs/CROWDIN/tr/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/tr/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/tr/SettingUpAaps/BrowserBuild.md index 72fa2eedb71b..aca228053b3e 100644 --- a/docs/CROWDIN/tr/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/tr/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From af76b8b721afc54522c9d77886527971c180e353 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:00:57 +0200 Subject: [PATCH 034/167] New translations browserbuild.md (Chinese Simplified) --- .../zh_CN/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/zh_CN/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/zh_CN/SettingUpAaps/BrowserBuild.md index 6b090eccdc46..82aa0f15d39d 100644 --- a/docs/CROWDIN/zh_CN/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/zh_CN/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From a8aeac3ae3323a7b4f3b28ff5051353752ea5a47 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:01:05 +0200 Subject: [PATCH 035/167] New translations browserbuild.md (Chinese Traditional) --- .../zh_TW/SettingUpAaps/BrowserBuild.md | 115 +++++++++++++++--- 1 file changed, 101 insertions(+), 14 deletions(-) diff --git a/docs/CROWDIN/zh_TW/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/zh_TW/SettingUpAaps/BrowserBuild.md index 2720834b747d..1fd8b50a457f 100644 --- a/docs/CROWDIN/zh_TW/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/zh_TW/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # 瀏覽器建置 -(browser-build)= - 使用 GitHub Actions 建置 AAPS。 **最低支援 AAPS 版本為 3.3.2.1。** @@ -65,15 +63,19 @@ GitHub 現在顯示你個人的 AndroidAPS 副本。 請保持這個瀏覽器頁 ## 2. 準備步驟 - 如果你是從 Android 裝置建置,請先從 Google Play 商店安裝[File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager)。 +- Download the preparation file from here: + ```{eval-rst} -..
-       • 從這裡下載準備檔案
-
+.. raw:: html +       aaps-ci-preparation.html ```
+
+
+ -AndroidAPS 建置需要私有金鑰,這些金鑰儲存於 Java 金鑰庫(JKS): +AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): - 如果這是你第一次建立 AAPS(或你沒有 Android Studio 的 JKS),請參考 [AAPS-CI 選項 1 – 產生 JKS](aaps-ci-option1) 來完成設定。 - 如果你想使用自己的 JKS(你在先前的 AAPS 建置中使用的那個 JKS),並且你知道它的密碼和別名(key0),請選擇 [AAPS-CI 選項 2 – 上傳現有的 JKS](aaps-ci-option2)。 @@ -82,15 +84,17 @@ AndroidAPS 建置需要私有金鑰,這些金鑰儲存於 Java 金鑰庫(JKS 使用 **選項 1** 建立 AAPS 將無法更新已安裝的 AAPS:你需要卸載它,重新安裝後,從你的手機恢復設定,並從 Nightscout 讀取資料。 ``` -AAPS 應用程式在建立後會保存在你的 Google 雲端硬碟中: +The AAPS app will be saved in your Google Cloud drive once built: - 同時執行 Google 雲端硬碟 [授權](aaps-ci-google-drive-auth) 以允許將建置保存到那裡。 (aaps-ci-option1)= ### AAPS-CI 選項 1 – 生成 JKS - - 適合首次使用者、沒有 JKS 的使用者或忘記密碼或別名的使用者。 + - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Android 上的作法 +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -107,7 +111,8 @@ AAPS 應用程式在建立後會保存在你的 Google 雲端硬碟中: ``` - iOS 上相容的作法(以 iPad 為例) +(aaps-ci-ios-ipad)= + - iOS 上相容的作法(以 iPad 為例) ```{eval-rst} .. raw:: html @@ -124,6 +129,45 @@ AAPS 應用程式在建立後會保存在你的 Google 雲端硬碟中: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - 如影片所示,請將他複製到對應的欄位中。 ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -131,6 +175,10 @@ AAPS 應用程式在建立後會保存在你的 Google 雲端硬碟中: (aaps-ci-option2)= ### AAPS-CI 選項 2 – 上傳現有 JKS - 適合已經擁有 JKS 並且知道 JKS 密碼和別名的用戶。 + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -147,6 +195,45 @@ AAPS 應用程式在建立後會保存在你的 Google 雲端硬碟中: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - 如影片所示,請將他複製到對應的欄位中。 ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -165,6 +252,10 @@ AAPS 應用程式在建立後會保存在你的 Google 雲端硬碟中: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Google 雲端硬碟授權中的「自訂」欄位,適合熟悉Google Oauth2的人,並且想要使用自已的ClientID時使用。 僅供你參考。 +``` + (github-build-apk)= ## AAPS-CI GitHub Actions 以建置 AAPS APK - 適合一般使用者。 @@ -217,10 +308,6 @@ AAPS 應用程式在建立後會保存在你的 Google 雲端硬碟中: -------- -```{warning} -Google 雲端硬碟授權中的「自訂」欄位,適合熟悉Google Oauth2的人,並且想要使用自已的ClientID時使用。 僅供你參考。 -``` - (github-cherry-pick)= ## 如果你想將特定的提交添加到你的分支,請使用 cherry-pick。 From ff4fb16f5a134c98bc8856cd234603a6899ecab2 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:01:12 +0200 Subject: [PATCH 036/167] New translations browserbuild.md (Portuguese, Brazilian) --- docs/CROWDIN/pb/SettingUpAaps/BrowserBuild.md | 108 ++++++++++++++++-- 1 file changed, 97 insertions(+), 11 deletions(-) diff --git a/docs/CROWDIN/pb/SettingUpAaps/BrowserBuild.md b/docs/CROWDIN/pb/SettingUpAaps/BrowserBuild.md index bb629e0992df..a3ad592f33dc 100644 --- a/docs/CROWDIN/pb/SettingUpAaps/BrowserBuild.md +++ b/docs/CROWDIN/pb/SettingUpAaps/BrowserBuild.md @@ -1,7 +1,5 @@ # Browser build -(browser-build)= - Building AAPS with GitHub Actions. **Minimum AAPS version supported is 3.3.2.1.** @@ -65,14 +63,17 @@ GitHub now displays your personal copy of AndroidAPS. Leave this web browser tab ## 2. Preparation Steps - If you are building from an Android device, install [File Manager Plus](https://play.google.com/store/apps/details?id=com.alphainventor.filemanager) from the Google Play store. +- Download the preparation file from here: + ```{eval-rst} .. raw:: html -
-      • Download the preparation file from here
-    
+       aaps-ci-preparation.html ```
+
+
+ AndroidAPS build requires private keys, that are stored in a Java KeyStore (JKS): @@ -90,8 +91,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option1)= ### AAPS-CI Option 1 – Generate JKS - Suitable for first-time users, or those without a JKS, or who have forgotten the password or alias. +- Here are examples using multiple platforms below. - Compatible with Android +(aaps-ci-option1-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -108,7 +111,8 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` - Compatible with iOS (using iPad as an example) +(aaps-ci-ios-ipad)= + - Compatible with iOS (using iPad as an example) ```{eval-rst} .. raw:: html @@ -125,6 +129,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option1-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 1 minute 37 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_pr_ci](../images/Building-the-App/CI/aaps_ci_option1.png) @@ -132,6 +175,10 @@ The AAPS app will be saved in your Google Cloud drive once built: (aaps-ci-option2)= ### AAPS-CI Option 2 – Upload Existing JKS - Suitable for users who already have a JKS and know the JKS password and alias. + - Here are examples using multiple platforms below. + +(aaps-ci-option2-android)= + - Compatible with Android(The simplest, recommended as the first choice) ```{eval-rst} .. raw:: html @@ -148,6 +195,45 @@ The AAPS app will be saved in your Google Cloud drive once built: ``` +(aaps-ci-option2-computer)= +- Use a computer (supports Windows/Mac/Linux) + + Open the webpage https://simplewebserver.org/download.html + + Install Simple HTTP Server If you are a Windows/Mac user, you can install it from the store. After clicking the link, you will be asked whether to allow opening it. Please choose Open Link. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_store.png) + + Example on Mac: + + - get → install → open ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server.png) + + - Click Get Started ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png) + + - Click Get Server ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png) + + - In Folder Path, select the folder where aaps-ci-preparation.html is located, and then click Create Server. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png) + + - Seeing this screen means the server has been started. ![simple_http_server](../images/Building-the-App/CI/aaps_ci_simple_http_server_step4.png) + + - Do not close Simple HTTP Server. Please switch to your browser and open [http://127.0.0.1:8080/aaps-ci-preparation.html](http://127.0.0.1:8080/aaps-ci-preparation.html) + + - For the subsequent steps, please refer to the video below, starting from 2 minute 18 seconds. + +```{eval-rst} +.. raw:: html + + +
+
+ +
+
+``` + - As described in the video, please copy it to the corresponding field. ![aaps_ci_option2](../images/Building-the-App/CI/aaps_ci_option2.png) @@ -166,6 +252,10 @@ The AAPS app will be saved in your Google Cloud drive once built: ![aaps_ci_gdrive_auth](../images/Building-the-App/CI/aaps_ci_gdrive_auth.png) +```{warning} +Customizations are usually not necessary. This is for your information ony. +``` + (github-build-apk)= ## AAPS-CI GitHub Actions to Build the AAPS APK - Suitable for general users. @@ -218,10 +308,6 @@ The AAPS app will be saved in your Google Cloud drive once built: -------- -```{warning} -Customizations are usually not necessary. This is for your information ony. -``` - (github-cherry-pick)= ## If you want to add a specific commit to your branch, please use cherry-pick. From 15682f6c2a8bffb5e07d253a0f09cf21a69ff569 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:14:35 +0200 Subject: [PATCH 037/167] New translations aaps_ci_simple_http_server.png (Romanian) --- .../CI/aaps_ci_simple_http_server.png | Bin 0 -> 468856 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server.png diff --git a/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server.png b/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server.png new file mode 100644 index 0000000000000000000000000000000000000000..95ac2d4eb44332f7c9d588e16ef30ce030d7c021 GIT binary patch literal 468856 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"qoe(Ar=8baw56m%Fb-%Z&{<7*ktMrO(g_uEB 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 Y%; Date: Sun, 17 Aug 2025 21:14:36 +0200 Subject: [PATCH 038/167] New translations aaps_ci_simple_http_server_step1.png (Romanian) --- .../CI/aaps_ci_simple_http_server_step1.png | Bin 0 -> 86447 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png diff --git a/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png b/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step1.png new file mode 100644 index 0000000000000000000000000000000000000000..78f52682b58d39a83e5a590754fe454f5d345c2a GIT binary patch literal 86447 zcmeFZhdW#U|2M9*)l#LcqO?ZUUTw`5LA6z_J&PKxy=x0XRZB~aQq+vSiJCQIZ(>EP zgxV`Yh>(!n^z;3Ezn}ZMet*Dy-@kXRD>*00>zwmC&+&N9*ZHcYp+ZN)N<%?GL8toS zsSX7N)l&+J^9GkLp8mp?;eP-0%T;@2Wi3Z#6=hc^S9jg_Z!N7=tX-_#?Jadwo={N8 zL`LeH+TGS?1fOGLhx6h05-gj*iEkt)O8#(6ES5RJ>q3?>V-`Hs~}O!`X#G z9Ms~;wwq;ID(Ai+KTnp(^xa*srXbzytT6p>UWwRq8S(D$a)+!_D(AxW_G$`4mUQ}^ z3Ru$jhhNN}3G)|yBX!JtpcbyBaa(6dv_F9?d1`{B9S%hl}# zzw}2M+DUa|za0KvVX~nFZHw62KSm5c%C!ks65ftj#9lMV2Xq(~rYAl*F&C+2?BbCR zHA}tX*>m6P7)S6nOiQ}75c`Okmh~Htm_haKlb#^MYQ7u>^BT{f=!MxH^_jT7b6_Z# zby+KpBM$ur&~fu;WUpfDC*ao2`xZBz#&FWx2bfr7=hLvR*=4Tf+GQTX=eOqC1dd1) zwR#Sup3Sw9`%m)7+&jZXZ5TU!?#3&DK)YhE;mbDfxyK);7yFRw~=C*1Y0+N&EG2cF~B0ZT_TMy&ZLb&+hXe$H3HI$wgN875(qFvq@l zgp1i@kc(kN!*c_0!-U7W=RI3i2NBPn>G3po7`e@S6;W=!Ds6m)L>)*Kv^ir?E4e8# zU_b+^cQxry*^}3>0_2M5JH4&U&N7lTAW(AjQ-JDx8!p*iG&x?v_bS9X_TpnXc!L&E zOMpK^9$`M_N0vE@=yIq^q9?|H&SzJR<%j5w8s z%i1xiuHjti826?!I2p ze|6!TeOgs@@ zPWR58z5(ah{(JxVIerSNzrRybP=wi2od2&e8mHT{SIp`A?3jOTDKjYlJ%Z|K2Gzg! z&l{W#ZS8OqJKbD<|H8(>B`711g9}%c?6XFM3emj$>M{?|PjG?L$S5#J3WWa$D+bM!6mSZ$UO%QnzCF{e zARjckCn%pi>cJPdbi7DbXbxH+>yMH(4@sqD(>M~~4_=c%mwX(kE&PdeNtH!EO2$4v1e*eCQKp<@G{Au@I(}LWQn=D4C z2t#gXQn}6NZ zqOOsCxb+g2zwvmXE;Z$%v81Kdj z=vaR%!{O>oLq^b zghPLVNF}0iMY8DTMnz_3=HY73cWyUUHoYf%#@RBr3s-u4YTk%;wsx%MatTz*r{DcR zL3xSu-yhvP^Fg1moIgG-zq!r0N25g2<*$0}?{AW7=;vo+;^^pjEPnsKg~Cy9NDYX1 z@Vl#L)gP_BsCW4(dqXTV=_-A6!E?K(LiUx85K!D;vSfc0`<*H(>VrbTjq;+ri;Lw? zC+%~VB>&@rmr{k#(W{x=7)PNp%j7GaP>n|$6Jxie3yIr4P&UIYUtb4j-1J>=ENiwJ zowgAzuypuK>FZx@sGZQ_aVgi9gY7BjFn#VNSQC<6iT}@{`FRFKigW+z{TiF`*An@2(OK)J;%d6Ti`+_U zoF?FAwEz6zDvg=Y5-2o5%-n?yHdmmbG9zJ?7G%fIF8s$+P=Xl#pG>=Cb)oU&>e@&) zJUo4GNLFmyu*!MH8_u{ayqev6L_q@q4i+z7V+lC_s7)&&X7zu#eTnn^V_IK+?CheE z?dnk4F8{Q%v-2(s%_9zDVxJIXoZp?e__;ADl|E_k)BkqCQ~^r%aJfz2WfA9&`md-r|*&&i0+Cv{_f zZQLp-DSJ{^VRL}T7Zbkt)47HJw@{zna7&Wd{1o4iVr~Vcb{(US@Z-G*^~=}(bAG{3 zTc{213mLT*hsQDxpB-yk)`DH`-}<;GR^CKBn2OVs%k*w1@$~$g6qz)>7qP;6JG;Ma z>oLQj69)d){wbz8ve2^r>dA^HT;3>vah2_>_Jg&ZFY;M;e4qP7$ln?x@H}ep)SnVH zHmbly^wl_-jWn*$M^OQ1s$?s=YgW*Imqut%}HLr5$aX;WNnBIWd zsK%)f>4iYT5&49;I**k}9KzfjIoKXXKZ7(U`{BF_G&Mr|cT;^b*_rzyPbr%!N|_!k z$JiNcm*-6g_?%Je||RR06#H|dqNrmrj5#BSA0nOe3FO?PJ3c>kKhF-K2kl2So9<_it@U#ard&RZ3H z?}BKHZ{8LgoEdhkJ{a<(WrzO=m55JRJGw4kCs$DbwJ4=`I0}o9s{c$ff51Ra-KC_x z=_J~;uVYfASZVj?ZvVP}7auggWyn-^E4OrJs})QdKTfBdT5t4#4K{ys3~xS)be*)@ zT|NqGa9Py#9YKw}b(|>E25QU?!^5nLJ2Puu) z^_xzlV_8X2IAw1w`WF_Y;{{+lazU=fM^)ifFN&U3>^XXwb3wQaEhf7y^0!^^f9@W!<&nR+ZEaIt?jXQK z=A9272iE$`Ci-lu<+%C_4KPQscB4NM(=DPk7Q+q*te@(x&#j2 zJzhl$yuR)ISFtmcPF1T%lEhQ}Hc7RqG1oQ$^zPuc?2MS+!sgLZ7U1ih_0LTRrraQV zH5C4H(?pNL=BAAHSSh4`iqGY?Hp|OJjYZ3fWlxuiIrhZy92d6{5-w8NdvkLX1U_nV zs>`zosa+9#%U`Wpn+TAa+g^*+Ii5;z>@vG2MLzFwP3Gjh*-4S%6ok|Vk)TtK%r&a9 zDnuS+&Xg!iUSF@$XI{ml{2`*F=2hl$go50T6UgXJIc@tfsZ&SZcK6ofB5-Bozb&&~aQ{ zK;f~fn)^oPDnvzE$!7wz(YD_d{rwwEPr8aX`*ejPr`zetvj(d}<+OiIOgF>Moc-tZD+TkQP(X%_ zs|Y;e&={PVQ^XHU`@{wPi0{Ad3P=RtyO-+1vgp0NW^B;oYB&KbKpCZ0#uWM{NAIgL zX*ScqHGP`Ky0q9X1-}B%@9BSV(o4J&S(KD|Gr)0sn8iCF%C(r(BylCT zl|N9AAM16~JAOR>ODofxsPzGc*F~&f5}pwF5_8nRz zAMKdoypEQ|g6yfUvVUWa*oQ9Hdu=XSuk7!4fZm!-AH+J()i|qpG}>%(=yCK(u9p1b ziAb0%F{&)l#D~oM@@QzvIMLyN324$X376wGC#G)Gbqu4XTvV>&r%nwkdOaUplRdq% zt0pEX;lBqkL4j?$htlBi60^!Yf*fd}TFJT8SxO>xpMLPNW76}Zehu~-*8HStpSc49 zZgYTotVgKj&f{^%6!44_k^Z*b?9y+D?LwpDo1@(Xh>8fG0mRJIbnqJP&J4CKLdv|` zcQ6^gQCr>O=kJehrRLCs{@xQw#LvC!twQHI!#yO^Rz=x{Ou^0HI8GXO4))fUf_>Tv zxEkNxcPY7OW=WP<`i0%L1m+}-`|lBS7UXp>-@*Heyp($7#`-M=FX+sK*CfdZRu{t z74e&20w^wE#Pw*U?M1X}s?0ck3_##lay>Q@@m@{nCmdE>#3Oq-1O-jD8#wdcj)b`` zx~YPX1DL18Pxrjn(rEKxzj=}JOHK!k-q|r73vbv~{mDU1^Gq$GEe5)7ZlgdLi7tKB z%9r*$)Zt_!LD=jartweOx=D>X7$q-9-Y~43uiNw_%6?0ZhGDqwX9W zi3PL zTRalK=vjFKFw_A|bg?K}HYr*GPwh>l1eCpQ9xbciDDs4}zTN$DvY$^s4M)6j_V8QL zTU96k&K(W;6hlsWH{it^6RVP?DN^z#bWdL~esrnB8SI_A&zdg;X&m)lBd5$@ep?R2 z;38M?X+9`>*AYcF(*MH4{TdXj4D}m7E)9j(ff-PmNLi_N09`_AO zOVf!r57ezX>;0_n0!PUrea9jf0|UQOcFDT<`r}gEXX7Or-Owp>axN^`XM1%Yn{=0r z^QW^HlcW^LZ;%W94?)4lbzxweu~P~bSIWoO-24M-FMZ5sjcmRy!i3L~T$%9>~h)ClBw- z9P$U(&bq%EyZjblA8z&hwF>EW8P zqyL^XJ$>&Fxx5g*d*|+f#OR*K^KiQ+tW>M`%|QnxkFWqj>M1?Pa*GF6JgpXu>boSE zcm@|@4SW4@u(sLWTHovcf9!XO5G}?yXXSP*pUglq+g>qjp&BhwPo0OmnVcw;7Vz^s$STXGdtt z?7UYy5Z4|cy{&6`qooTko!&4a+R!+04B0*DLO?)hN3=d&zw2Bbx68xdn$lV7eDq=% zKLliQl(+iv`oqX*F_$SFX~)h!V{;LR+Y7#0Ujf}skEmqUyg2h0w)v~#T#kA8CL{E7 z?-^+U#-TKmV%6T}L=ZrC6{(g0OA(G@Rs{QPtZ!|1OQw6UIv66#is@CO6?UzTlgi45 za%}i@vlj=2z`oeaa87y4Z0_pmiFhG>DxbYbuNjAcKS44UPfkM}4d!$7Pj$DIJ%7Lnb26Eg#C}g@#p#z zMky%+1Dohin5xL*R->sr5|n-ikNzQ;WAYg2lmn`+4IjnEQ^v@N5M~6%sB)0Z% z`;!%bP#{{_+i#waev&?DM_H(_=ww6sjWZrozwQq2!Q5?ng+KH3SM* z_8S@p+eywcY}#-q7A51 zjrVlvAHfu$j{-4Sv|>g65cBQ>@gUr-P5A)+z@X2BpeFJOImhp6iFqv-N<+%2o7RRj zwZA2P&_bo4J=Xx5C}PdcPGW5xcqjMljQy9-L5IMjRibm(5m%0AMp^H=VhuPXENz#yqaHHCzf*>MKm}wgiX*o89OM?r41}aw%DTeb%_ny~afwtzQXK zvoW&=>g+hNu@1d{SrlO`%P~>g|cgK|3KFdd!0HeFuZC zC|wX*a|nJZz>;)TxArNzb7$v^Gsxc2IW%3wtYR{NQ3~S=)_^&qN}}*4qlvqVG`L?_ zBIA*|=a{`7sHO3sGyldf%p4JgUkKDeQE$db5_hJJ`ndqu!`UC}6pc81iz<6S7Db$_?dn9I0 z5eFtW0u=MAbEaUquoJmM>|78J`(X!$0u#j26Q%Z3w43`cMqW~@GxJX>>TvwkLKU41 zJ-P{6HkJ>(10B9{qJh9zsgwGV%DUEEO?`zgxq+rh`C++r>(WQYQevfCSTyh8ZmjJT zYstM-o*76y?`6$iXmwq0e$)5)3ZPlkI@%JL4w*t^2kEc;w&4RlTJdVsLMp^x*j#~| z-PpdRnGqbqC=l16U^CXZB7D3$mW++Pkye6I7?#to^ z(w#YudQ>VZyX5d*wY5HKe&dfg?)u}3;BcI<`HCa}C6s?)TDAOH#9NDd2Ui#u^f;q+ zL$cU;eofI-9Kviqt0O}EI*HFuf0-PdE4!I}0gwrtvhkndOcX_Ixz(TIXClmThSl|9 zDiV_)bX3)}8|hjyWSpI>LJwyTN2Ggrdo?Qn7kZP&-oV+d^VvM9mJrPvcXY&cy@#)X zWOL`DKPap`R48}&L4sG27%JAL}f;; z$E75PMSSP3jgk-?(wXwnI=^2GI%!^ea&uhnupA%9+|Ob~-**Ag+O& z1N`HXYSzR^Q}%VqEjP#Y#M1n3ej5GL1M0!P5>y`_dPKbaIfrn+4!B3V-Yp?GKd{{( z&FAP{i2xBdnwUkB-_U)>ta%PKB#DCQPtxfY^n3c^sHm?dN9(Lnc^r=asrGfK|7|k3 zK2c((YxELds=HTR<@%Gp5?u|79Q!qt88!5adn9*r5|Xn0@GOOyAE$_xo_5>DX&_T9 zN&~qFJc{UtoODmjXnz1SIpXMkEF=OLly!7}j7dU+0Ca++-=^w?$quE-@;~x$_kl2#MTjr#WvQC(WAL>N7c(? z%W|I2jccLppIVXx=La)K-|sIHG10`L#*;gUO_IQ>LBtjnv#^X~W@w~FaGqA*7%ptJ`10q zda5#o)ve==KHZhYcCu;8RLBxBQ?Q5$}8}E6eUD-o&rj zd@k<&cd3xQa^2#a;g-*qBPtGrit$YE4tgR(XgAYHGYMXIs^@>Y-w#7%2g)Co=AqS{qFO(NWvYPgHny@Bsq>}iCVvX0GlxgihO8xY@B57#Aot(L%n z`eYS3*U5kgwW?jUjW`9VVrmLLh$LG};f4Xz}>D>vQLz$W1_;Ix; z#`$96#fbATv3dDxJVBAzYZFB$Umv0=*h@Y4Q?DLcn(TR>bh4Lhq;%$Pp2iQXUI8ww zKBKm(?)?*VxnQ7Eu|n~^2G7skM?dFuYX0==MpyCnAd*5;mw+`Z`3I;DwumYh-t$9@ z!4YE3JriZ6NLgE4k^Vs^^km^@p7J0;;NS|4cssEH>>=GGD@ zHeeECsqQbKsO*j9s+PY*_&~S5G$*(@0WpLYFSYr;_Z?1$NtnJ$Oj#RowMw~|wdHP> zvNJm23^xKKPadFUoq+9HGtD2U^L17lNKdzjUWlen7jhdK4iF9uO6%h4^+5x?OaG{) z`tW51=&!k@`^G78pkZW%UHhcu1aHTVc2De{gQN1~RGo*dDd%*C!V`&$cR6xhMzW^o zS!QaQa*T7PKU`fW0H2=uBr3rI)LAOy0Sgv}y(>%HrayDk=TjA-e#Ow8QCiZct`ME+ zr$fxDqBC*UvE|pMl=SDwPd3xH_je*}np8aE{jcfQK*H|L=Va#B#CsB_SWBlHs$m=( zu&H*jiNs>Jy52@nfMM0_hveJdgnFxM3in`fFxypP>XMfTC(kRM@M`>Bugm-juTHdz z+85Ww%DpyUc?I``6&!GV;20hrZQ1}YfH)1-Q2dBDATQImpp1~Op%=Lr)j4N0{3HNd(rOf>I((%XjNDu;9BrsJ9P)+k* z);EOH$)iDmq?vpLePU61M?y`}O8(UT=&PB9w|$iu`Fvi_LCWv+jWKB&9nBEqx;_^W zrj#ZC*1g*GnPz-ysyNT!m(kny*^+6fh_|p2kpmb|^`B#PvL{z4m1T?(6lK_W1a_io^nZbK&ZO{UZYhnbmkGDSh91tUHXIU_ZN>y?&a_ zQ^SPBHTh_JCx&m#?KNReIAtB%R?X}7G>9$4Idk-)$Hd3VEoBbE@Ne+Z$cX}=?EaDv zcGzpF=TCj|c`zn~Uqa)wFt1&i2}_BL@xFV2RQ^tuNNH64;{gNAY?amn#l28zU$Ahr zT^ut^uClibY8K=fv60eul%=U~GX7KZ7@K6?C7Hl%uD6Nt8k9u*JUv`ai>#x*_wzK< z8Z7>-Wv~B7zQ083hDUb0+of=^Q7`9hNn!1Pk?mq!^V9fg7HCv-h%TBEwR#VK{^g3i zw46ipP*U*r$F8jvO~C10XdRp|!$`dOOK2>>Tr zCkh+JZ#&7z$!!Bv( z+KUf=ZY}krGHpHuMuRQY6;9SQ7uk^Pj&)u56Snn7@OlXi6NwG;#U=GoR@aVoyayKC zWzUO8ri4gJ;rd)K<&;Rn=HvJWlJ};pM^{ftHE4A-3X+}3rf2;VVj`gt7+r*}A8}b+ zg1VfQIM!@xpiTjf1CFj;Kq51y;A$Gc=A6x087n_iaS?v#cJohfD;Loz2+Tt_yB}%1 zK7~fSKl<9JoeH5 zaJSc78dWX{f?1CDyci-8x`BIML*o+l*5lZ@2}0MK_O)1z!P{LaML_X}4-?vl-Xj5N zYL`;&DN*}qaqy9&|C+5r1htl(L337U8>-GRAL-VO_9maukHbGmNL|DFk6H0SzV~WG zLdLGujasuRVD?ntv(mEh5)7@ranjES4N#&iojxeTuDB+umu@pU_$6kDw!Yw279 zq$8ya^oQ2`3$;RlNuinVi`iz6Fk~Q+d243wNMms(F0jeEpVq6N(7C(aWSIi)RMsz^ zdgJZj9h}~*00+5x-Wpj8F(-^BZspU<=M3uxsYxr4Q;}{&W5E8PU?z8S^Qxp)n ztd5x5+Wp$?h`;r64!`2Qcv3n@=BV2nf~=F%h$*bV8{^c0*bgAW7+8t}B`YgQB99(E zZV-l@mWP6MwK*S?k0aBy@+6U?;{Aat+~ZaHlp5~32Ikf$Me?5Gp^F+)>wCu|< zQoeBq_r^YqC~NWwr*Z*qM?F+=gx#KU^m`&^vEU4Ky?hl>{OKiE~_{ACWhXwNy=X)@QQ5ef+ zvn4Q$H=|G}<@`bOeOre)5Q~TO&V64`i}z{@`HQ=1iD_T=T=M!7x5vKv3fuj3;qV&5 zd|eK)@YU@-M^_1Y7f6-<<$Afsnb|))|1fdB8{fJ$%5Fv2N959b4!zt~XEYxqUJqM#8+hA1@j-2w$Rd>r_mU3w5K6kg-9YsYh)N4wxade%uo zP(NkrZy~;(_}%!Cjpu6BL;8nks!}P!N@}FRwz`BH3s(L`o7P*~oMf)gnben+#X)ag z&lL&{=VPvrAKl>P2%iqJamTJWM5<5NxS#O3o1W(D%oayVzM?!2K)k13x!{~u@yM1=L|@m0E~2i4%(0+?2g zjXR&{m0Y4McE0>3V>32!#d)c^NOg1HnKzTql$Xe|Zd{I28U*@|Keyve%>8qg_4{|* zLLAf2Uy4g60Xps71Q>#vfWD3#InJ73GD&p&WzEWj5Q?lRwC}IXeY;1za#W54=pg$a z0n337DN_gz`^r~_@#rjl9+TQ~tNxWDE^tNn!C9@EucF&*z|qdR_#3a!Lc5j&1D>q? zTR`qdt(`NfuQ>kBX~jAfax&)fl$!CO{zWKE>*x`VdGv*s+W*Y!66bxd;9Kj;61c%V z)iW^|VE(-jE>vPWQR1M~b9xLV6v6zH%9^eJ*(Y#% zsz?9lor?3i(yfbUr26ms;d~n0c6_v_EG%vP{C|Eu-76U$9i^oD5Ba#n$&f<<`u`)< z{?Fv)KePHP$Nv{=<3AkyhlBqO#QzAxKf>^jF#JE`Y5k+l|ETjn>imy7|KAcB{)1Ql z;MG5P^$%YCgI5%k|F32J{=xQtu>Buw{|DRu!S?@au^rj?-umCq0ytaL`u|yT%Ah#+ zuX+uiPR1KiO-GzIqx$Av0Lx$95B_@o($gF3JM3peT5`_kvH9^%_dMO?6;{93?f%VBZah{h(z>C(v>^26w{y6HUFDt^oWO)pS{qlEFt)ieJ=Sv>nvyLGK z7Q>7Oz7i%oulsLro^*Nn{Z3jFA8gZH#11Cd&t8T6EsM1=aWZ@c9Sg{xUjBZjqGihq zW)~?1SuwDXiJ{7njZey8(#@&VvK||sBrl)%((J(!btni6EG?CGr0wb5BO1hf~JmIrjK3 z%=k%&LBy=l*RP%Y$x)^Eteh|YJmbOroD2O!_*M1~Hib2|%L_fIqsNs#<{slrgB-tJ zNXjnmx z0+e=8JJ&n2n9^UQ&&n1vsu{)np(_O(783K^L2d2np%*SasKN6~4uTHLemc2gkE1LaV$*Z@j=ejG-V0s{RHO+WV3w0O%B))1Zv3bruh{RLL?DL~^t-M-jX>AXoN-=2SZD1Y_vr*D2TK zf}HdX(|wvAxYjm-CWlNw<1|I=;mT@Zf+jDE=#q0Cm?hPPgnXZdI9!!hqSL4+b*Vr^ zu*SIs!&xhyxrb$W7V(%?#`&=SYL*rRdEo~}DOG-nINzukPHta*^;nXVve!ZPLBEMAcU zk#nG3jdUh5g=Jl!Q7UQ`aJ(O~_QG3TH=vA_OZJrljeahOr(eKA-A545zcVmoGDYn+ znLiva&{tkD>k~Nf7F=IxK`$>^6wI{Y7@7Pz!)7n9Av%ElOhe|!uX8e_8Fz;?DV?&# zMvs$Deky)qCEocYJQcK*7u!VKI0wHfNq>+1Vacn(MLqExK`wX)e|y0S|KozA#Ypx< zq(%GQZzLHO`^M_)`}LFp=Xn%4X*S;LzCO=zNi~BhAXW!qmgqbf zn+n=TS~uX->!)D8aftZ=-Pa?WmzK@sSMuDqXq^qzIsBqp!C{uh2A|W^_>_XIu4bh<{?LKxXcbJQzzD#gZDnfsXV{Wd`do2cg*#( z_6aY_>iM{VvL?})#`GQlDYFM~ywdEZ{B4fdO|7{@lBqFNQafnKy z3J*hWupoPz36;oChmUI2#)I2m_Ye0<55AMf9a7Bivgk)sX`ZRQ;wjJv-?j@sCF==V^DvC)nrX!OQo+#! zH=wY3u1_VpSWT5hn@v{Nqy|~!WqEENHZu3TZMyk9&j#4WS7lAG7h=`DQ>k4|h zV17`4h*?!nNXkSeD`czrN7IUfOK?L-lT<=2d|{DN!iyH57sE>FzeaL zNp?XxV{xL1pw#;e_N@}fPwSL~Fv71T%&VmU;i+x#-=N5@%TM8GKj-)`mdGcDC`fV! z59^i8oQ>?Jc6f5}M#XxZ8>KeEdp5_Vd7?PEsKVX2N(-|uXmMwRVS&aeq#Z~^YI;rI znVZ$(cr6;eTb@(4o zC|*4sW~@Jpe?cX?blg?pug5k%Ox@>-CG4p?AEYaMD=`EmyFYS>V7*E!_Fv{?qU_H% zf$JB})VJ;0i*`-pcR^@{)zYXf6SBuR3ZFo7YmW)yy-Labte>u+_q8(r3j}aBI=*EA z&(tUNN_HEk2bka7@#<_{d;QifmTk9UMdI}*IzJA93%^5qQ&`Mu-VU>$Y-Kc&OU*zl zpa{JbgWW+V{%zQ1kcq$GFt?qLHLGwvlgs(ji`MiX{9*Grm0Estd-%fpWnvB}0>igN+}Ly)tIwC|R4P>&T(q*Q7-uaNo{?ZMbNdr>G7r63TCJ!) z!ua)w<&0`CFIfder(c)t(D>U~Hcl%+t4v;)NIglJVGI?N6fzT92)>I|9L`sPLSjOT zqcBs8tpyq784TCO450)!^UmNFDn+BrEc4C1l%Ec1yYJxuE1cewZ*B2mG;Dft;&ZSp z_7fFYKg|R7Dq-Cl;@d;|s4vP%i8C1891s>1(O(L}fhJ^CeH{ywQtX=C=;BOzg|8a2 zZplOQN_4N04Zx+Ckym2g&An zydpzb@h|)htUtbk>vX9JHaSV^^XJQXGH;IDX$-$3YJ4s1e=f8vxAy4KF88w++nY5I z)C7J2V=73$@Y>-aBQa`nEY%K{?C%<#7S-VId0xpH7lamXE&M9|w&?6_|L8)aVHsPE z7)jw-ig<+9kLrcL>v!ufF?`WT-CrDm?08bX8H#F;C zI=9TC+c+?y9pOozaj#>oGD(2W(7-@zuVv!i8*3&_hw8>z_Eg4;ugqS-hiwI_g@xwT z`$ir62@*AR(yDrO=3XNiCpf;oiLqz=ebakq_#t!Wd{$=!vu4xC!MfIygEO~XhVDZ0 z=gheP9~9}3J8U7sk6zf?^vCMO{N0<|tu2mk8Ltl@bnTg#q$^WCCWU?by>6`9Y8kwZ z@EB$*vFFpDxgPebu%xmgNL#g9cJJnggJOf{n_`YZY>sWb4Fuo!pP1mH0v(-HyodFn zH^&=QXZ83XUb>Z?9Hgv46yE|wY zLd$+5p;$sb#epRpv0kk}W$bD@>IAtB9BU~I%k)iS575)SIXD3z0;%<7A7zPaX*9`Bv7XidN7Ib@;0Hw&ipc$YreV zwhRv<45fY2MTc%a?DO9*VDeo#@gIlqBZ^nkKQlRsPiril*z-Qs+NOT!Z;961=sDn+Xy7vyQbF7i*)AG;a$sJDAGT1p4nEann4j z_{MlqdV{yl#HV)p28>TO@nS|-x24Oc3x5M>jo%cKPx(@R(w*U8+>IB?F=A+#txpPQ zHHdB|eEYitN2>1&J9zB4Wa8fR)eBMBw{XUFfYKtabay(TCu{^zvJCn_MQ;cIl9@3& zi-Thlom5v3hbNKs!-nq*W(*piVl{7HS`j*bcz>L_3OVrMGS6Is!{<@wj=?p?Hety7 zY~!-sB~|11SjFAhM>Mb$1RIE=m? z^)4fnUL`IYxIW3pje`06d(Pas`5)JQE`c{Rl1{8u{syBu84s=ib;~qK-cttNSEAY2 zix}!T#as=2wV*dmN;v4mOr;A~^0w5cXt*8T<-d=)Ea=s*Z{}<9MNR@(8b-|zFX|Zl z^N_Z?TBJX=mCh-#?FH`@Yo=mAWY{>W7+2`s#bjSY`SP}~;HwUpeAQZ0fgy3D-=Iy) zi-%5g!P#NP4IPzC?i}2F*x!*oVn5e(#mz`BPvT#v=od+u>?vguvXDaE=ygU;5-;`2 zv4s{170K;d9^y2wP8)f!0Lw-~5ohj2;XTE;I^A`HAJ-HeqQ+9N~e4oF_Dk{!F*U>ZALHRV8HC!upLJu>+le@Cgk5UHmKe2QRPYk(ksdPmGSzc2FiXp`59(D-$Pcu_5bzV z+!sXl zQu4M(3CE`jpiVM~Q~V*yj)@?Uo}vQOm!ljbyJ!v9!%m(0^%)l?oMT#GbZ%wU5EaVj zReF*|oM;L_>f&86)TX!K&X#Ls7+6C`$CBlxdH&|V(n0gfH|-8K50;TsHKAt^E*uk@ z@gpNfY{s0l9aC)}s5yGnO=LM@m@ex4N-bq~_+C}|zTifa_Q{pvwssDc=iDcDTOa$P zVR-9+sg0#}bD=7U2@U-@g&{t-8T+J?z#pYK2!%2(%$+ns(8>OvjQ65 z^1CRI#u=N`s6P&#ahi^jZ(CZkJ@jup&N=*slkWK|SojvAY&UbzMk>HpT~k|q;kg8M zs{9EoCbXP=;{617Hg|G+}}S=%8q2f9CjstO{14Z;Vxe^cVa}%jc=CFWuGGHG1U^$tZMvShoDK z&7$>X(T-rz?MIOi^dM!^bJ2Xz5W)<6+7Okm^ zVQPO~v_756X2f&7T$tQ4dPbatZ2d9>OWS$aRKHGa3r8@i=ciSNWsc~yK7Y>G61wMh zU&z40EM%v?GFNlD_>-P>6#h1I!E z@}=1|ej^{!pbo>(kUS7w4v zY-LOJv*oI4B8^cgwE{oYB#s7EeN_Vegl!mblzlY;VmJKJXVz6p$xEh?7 z?3F`rw_ztV#k2VweFuWBj(`CikgQJ{i$yA=IM$T71R!i+c1J8aGODKIT#4qn_r)$3 ziC@XplV-EamfunwdLKLEGdmA<@#u=!(9QH*8_zqXrDH_`;n82CC-Zk+v+IpP-P+JR zn_=h;L+@#N4%N`&{!lK5uTfrBe-{Y-1fC{F22v`XpFxEVr9FDMJJ3{;Gw_=HQ2udV zt~HWVLgz*WR=YZA%*%5rGh4s)MZ22H2HUuk;8giX^$5^D*~Dt*;GR-TV#=Jj17!BT zovXq8>tWprDfqqRah0B`A#HsfXTRn_($Ybtlio=LA!-G!5)G@kP#OK&Hqj5Y_P?n5 z>Zqu{FIt+Rhi(``N;;%r7+Rz|C8WC>$)Qskm4=a$?rxBdp%Emd5kW%WA>ZG7YrQ}3 zS}<#U&gY(e_TKk=&b1PeAd{+-5Ii3@Y{(VHvnz{_e(POc^19EA6kUG)UFE=4`N(>1 zpsQ5-iPhcFMZy8oS3I%lvfK!-&dT_qkP+!ZlyuZ}khP zoLq(KeL>LGo6`H9w;WN@CSEys64Peye`hEi;YqgZ{?QxNUq{Z4OKiF^68;KgY*Pq( zkt#rMyoCN{UoCGgKSuse6Evo>E_vYop4;>=sKfY9i_(*mGOqU9v$Ozj^kcfv{=Xy= z2^n0@7f^D)%6K#qG}R{Lxo{y|=$?}xh{T*Xm7xd+iDb8b)g3vT2}1n-WqPZjL5DiZELV7$Dc=7Vfd83>A=%*>z zF{fLF6wIE}HD;d6!bL%l+z#&q@v81L71CT$)6-`2uF6co3N@G+B~dR_OEgVo^3ig_dV*X;%0W>Nx8IS$B4a(mUOa-&z(Tv7g6V86HQ08 zui_2G-<$%Zb35)@O>(}T@pe__f!@I@lV25c=KnUh#Ypr!bjKhj8Q2zZQsZ5&kOUv7qwUxV{o)kU} zTnleS?Q&b6W(mxpaN~gE6FcAk_YEAg&J+7G57ZZZQc-HeHWk#%)lAOsuWI@fqrRXN zT>mf@cx8zb@##>B^LP16vb|`zGPrCDXJZG(Cv>9u+I_zjhxE|cP=zA9MEk1!ruc7> z{K4I@aX7Crg-V-o16?IYaszC1K;G@be`~uvT|S57=k0yVC##h|O!t1fUvg((!f6_= zT4e1n^9l?yVTP3CbH6%|e?z*=Xgg?A{t$~)P!_LW_UV^ZzP5{`*Dm~9)jRcz7}MJQ z;+6c}dI!k*(it zQ24WEoVwBLXB5ZLw6g2v4I~3dM8XgsMY;giMoJz`Q;X5^Rl=0A>lHL<*-9&UWU0s! zWYFR;Vm!TW!Bs0-ZYJG6zqYcA)?oYRNr!x(dpfQnKX4#KLCY;lQ;O&{-PkM3&hk}Fm_#RwIZ!pyTkC6EGSgGsP+kQ zePCt%h+}UYd3p2xKI>+_Q~I>+B+1zAJZb!GY7k#a zGNwkQU2R5qL0BLMrls^NZ+KpV?OAC1C{UKI-fmD1U7+CesH;MQ`lCLw)T;Y?`G$$z zg1Wn7!lonmzNaM)D7kKF*(C9n&bTT_3(wiEjsaPb#m`5x4N88RDBr9po6P!w?KkW1 zdK)5<2n9(iS0yO{tl#4_liT^D_EYVwg@fFQdh~&yD8m@pgUXkMMYxO zYw7O%`gSh0A`fA;mQX5~~(iO-_F@m6A)nE!m~&}l@f%2&PO>8-iP5~URz%`V0@SA{<) z8Xv?2tPdTymK^4%*tHzzoZCISjN5ezd2KXkY93vN0&sFGN&GN@6kyd0eo#}8oLmgt zJMSHycv_SHsdHk+<)l%qQ@4cQg_B{e+F?#c9jg1-ga*if=em(X}y>8HZ8n7vUc=5~R zPuV-z<)C}f`Q>&~Z_1PML_iv1P`f+!5X&{!ekJvQ>|N;p29muaroaW3>-A z3R91D-4?%UPv|;Ev@Z1rMwL`Y)WU6JJwuL3*E%pc1IsWBszQ)+6>dl5M^Jt0 z=KU2$%hO?bvdfruG#OeG{Q`3GS1jRFYAhNY2^{keY#!A1Y~@!au-v`I1(GX-TGMfu zCtGU$RXLMf7_H1f6CsB~O@NYOgD%CKlvKWpR`>(z@ei9cKcS_TegyJt!%#P{8qn@h;|lL zk*qfGmuQ~bq08g9@6*A!m}Ng(q=0t8TQB|@QK6_$3V|$hp5ZB+@ubbIYw>G7TX}Xg z90;PF_%uk0X!KM6j>H6=)k_s)tJ_ z`AUbz1z-OfaAvtQ(9HZ2$5gk=-u>_gRiv8h>jT&?|DJ=DDovoM@ymBrv2Jj?*2Vh( zvZIa;#kY)af28gG(T^S_UI0OJ+^6%b23Z;JLb@12%bWAP{P?CIlAvH26mJ5g2X*vF??pxTtFbvK7vgq}L; z0#Y;pd5+Q`E!4D0duuE2_+@C?3;*vqxJ=`l_3@&or?tp-I{SZIC<4`Y-f-McI~s<8I;xjX<06w^fkS-;QTgEE!*}hrD(}yt7Ycek9Wm_{CWFr5rTl! zxui<}La9ljz~%HkFmRouF+s0LZTe`pjKtYg0_W7W-cJmwc_;;n%#U4 zimw+{%(n_aR+Qmkjz8JbjR8Hd zarJR^`LDNXUocF9vY=SHm@)P}TAFbB?<(3M<1?n{3tg=XB=+yba|2jT(1TWOk^M1C zTqzDp7Ig-lj(2yjlt+#4lW0Xz)g{v#HFqv8R=96EV%GgD?ecixOM5u67tiNjrchM7 zu6!$>fePGbKcFJ`?f$w~CFhAYrN@|J1NzRV+iW-(p;2p+k92+BAo4|Pw?u&f@jUy$ zy(W|1m$zd>bVo_)#zo7Rcf%Ra%c7^DuzUr^rnvjn2CdtHkg8IldLm!U) zyH<5i4vO_MggVh$$tO+u`^%ft=GsXU&!Dbxb({>rwpjThQ4sUjz>D1|6S=hcJEeiG z7d9xZCoeb}&sPoh{caB8+QHt;JPyd%^aGJ&_8KQ`PKO$WHARH z`Lw=#{DnA`&PA4B|F)pnc>Qs5-5WtqBTfJPrN*9^_$;3^MJNcwg2Wa>{>Hx7bNol` zXjdy5w!OhtmF+k_JT5jFR1#OAaXr_|k^i=qFUkz1_lnuvg42woK1c zHKCod2%}8L4F|G!)-Fr<%3Gw3xCH&4ZkKfV?WwcOXM&TkbSd1KS=xE$tyS_))Xd%2yT3b--H3N8Cjm9ou`WKK8r`?NHvGeRrt(oEoQk`z&F!>8V~=g< zv)@5~5oG(l$>RJYwsy;#$ma)#m?i^KA1>c+gIkRN07N9e`F_(cik{`=}%+%JMJsK(H!SRu{& z4ZG5R6xJ0!B5j{j)l?OA#)T&Rra$7qLS-9j&njrubQGhZrNu~&C7P}#ip_?c(}~lw z-W~?N=!5pP4knTIuQE&!=7(tSj#%%A^|8~G!H`}U3#{0X6uQ(fki0N{DIziJO`4)0 z>)07%>^ilDH@V`+W@iTh|9gOHU3?(ja=FW))zg|v0g(D=*;S0cj;zLcCF?E_(p_Ye zrCcf$q`Y1CA@@Qp;;(Q@J~cPVVml$5YRxCN-%$eH+VP&z1Zu{+Ge|HYLPQeOl z*~O=!K!T@bb?QY&@1(LZRU&%A+4$W+2Htr2;BsdH0qn3?*z5e@0D72m=llX_3^!Cg z$uwU-lSN1n`F&$AJQ{j)l8}fMXll}OpGTkfi9pk zK0!(tsU_!SJ_deOqz98=WLsnE=N2YpUimF_$upDX&#rDV*!PohQBx*JCQbNAkd0uu zJR+Y!a9>^|Dbmv$Vdp}^&JaDlDK-%K=HF!FF@v&;%=0$#-B2K%Y6o}Tv4Q;lAwM?Z2ij8;spujzg(wTb2Nca-hnSCN9S<1y78MeJ3DEmwp5 z4P`_!bARu(QC1cQ645y+0%c($YSm)XZZSGEjSCm-*&63T*;(U-I~&Om?*UV%bpSt2*Qtwd;FYA>F6OOWOVgoM4Y5p%!V=K zYLNxMczBZQ@mVCqkx|=rCzY=*b60XK$8H?BdWrsBs-gi;)n&jNV4|c?@dWfr0yDF)FBj#KlwT8G>6Yw7x`#-oZhyw)ANxU z&zs{(A~Is-`*}Q#MyD|pW_1h4Dq9kILn${TeMkB6)axigf%K3}eD_-Fo9W+oZb(|N zA{ALay}#bepXAAPG>7O(65sobR&|E3k-8UO;o|3rJk53f2PnAgD7#mb$KAa$sxMKV z@Kui=Nn&oq8Sl8Pv)WTuqh(hmA8&0gM)3jb6ACLBkyUUknjD30v6jJXFUW0;h_vB) z(P9gu?WmP0U?5R0_whI@5N`A~SR}Rf4Phz)iwt6x&UAwREwN^z+IhaN6bI%5f7opM z;}MPMX@C|~c7-pqk@m5(&*XN_>02-;iM|L(Gi1bc%^}1)#|K<)<1(_$@k)y$#5MlV z=QC^#aa{r_EJjDpR?}(J+kCjsI;~&!H))xjQDDMM$#?JFy;qnJqWvmyPE)uPdWmCh zLR$6Np?<>F5~TE&z7fx^OP8=bZRkDETZ|w|FZrmNE9f|N%xVnC5goJ+p(|4rI0r5 z>!;Ajc@69)ix`z@tqzhY!jlCGU~I3caSEZ6#@;WEiD``uld%UJD@t(*j*G!eB5FVZ zM7}5@1*s?_hQm^(uz>)+101slhcs+TGQS}snnn~i*O@5S@`%eTsHcV3Z@L#lEwqod z6OB&T71r1j?rQc|8*?Wi?Vf+K);uznUOwD`?(TL8$VGzsl0H?NO&!>$sC}xPFt|JO z^cB6B3-aa)YV&vhbU$=+=&;~3aU0tovz_FtHK7(d3hV{Qs~tArHFw>_ej5G~GmOsT zJ5hL7f#Lhw6Q-VO7mar_SOqnfJeZB%1fNw} z?Inaw*2ssUH1gGoyKNMAY)mMT?k^1d<9obisH8;pQg%*F#5?Y|MF;88^eFH+-v3K`rFgp0YCZE7MBk3)8FD= zM`l~;UzHa<1shgqot+^jKy11got6F#b!MEU7S)5g^pezh=}JXr{9bgonQ-npT?y|g zr`9@}O;2^7mEBL|cl!$qi-so6v$gg}<>*r15WX?Sk=gL_gtRlJ6hF4Y`cBqJB3906 ztR({G62#r+vPJNBBkd{`ff+J2PDE)RlP(a48-dR{|-KE>R#6M>?5UG0E3G?WfYv6Te zJR?$nKd^)ZB*_G>%=xuDV^XU}^?}TcZrogGK#Q!JfIUZwJ@ki5f{}Vh50VHODtV}I zHwww3hs)g$OAfEQ`)Tv8d`|1fhfrg$ne)EJ&8dn?xo~|Yi;3kNrV39S0N8KUslAXq z_Uy|=%L5#Z5;C5LV;?Dm1N;ojv%{rx7lw%l|E5JpCr7Ly5BBqzp67rsiCK-1utmot)bPC-i#`txaJyqAzb;h2?b!)EgIex`~C1Uc!;;8)L z7HCIDq+W*1C-cy$4v{E1)(r|UE9Qn)#@ODG>o9fe&j}GSZUn~qPyRDr#~jLVoDWeG z2|V9I7qKl=!oo1_4hO>nj|}aPxZWr3c0Vvv30OV;U8OOcO>VME;=sl!hBm~#&fG}w zaq&Pq$C3gfw-+X%8j1I8-VN}feI5>}j=&N6hEzAalPxwuNs@C%4qEzgQNTt0oAcgt zu+_g17yHx2rhCxg*Lj`)-VRA3cxrw=LQ?h1GYW@yYtRAl+<)w$(~>L-kb)cOSTiFJ z`fhv#qTewF`+?K)gVi{pE)i;Mp+q`+Af`?-whLz)8JF(~QzmDfVN4h1CSHS1izaxB z2k;_+Q0(FZDF-kk6lm*p-_dZjL)*v@z;1ADk=~4dLVb5UHIp=SS^ZtYuRB5b9nmfp zfH~GDQqxGTX5(@7h4EEe4xfsz-+V0Eajwcq)9!A#C55z-c@1sCF1R@bWN)>0Pk6N% zyRa1R4OeNwbEbCwEE{@nDBg&(sw7mUyb44ht+z#aaG|NoXY>>1~!wL!_&Vv zILY~lb=m{A`Ix-`wZIMxzcU87r6TClBYsphA^Uz<+G%J_`}ZssA!8amYrrukylQwU z;wY*`(ioH!pL-wjR$T(`PN1i@4ei9G9dBfqI|_}mZ=>q3a=iE*|3_(>lz31-E*loh zNB1C$W)2SrYF2rvXdj$~wD*LyJUV1u)z?ep^x*NAK$7kEsO$!YShq3XLd~39$I9i2tG;?f z^&eEoZy!m&EwLlI$F9kZQhQPF@#dMo`=As7IcTKgpUYroC<1AXLlDnhf-cihdmR+` zO5oy$-zbRK3j(8*LXSel#tb!KZ>-ti)TL>M)Kk75v6rY@K8fBLa?lgC!dnUs0KwP< z*R)T6MgC~|Qi*YFsk&}aD(Jypu1mN|t2_^|56h_W-*B zhfRfg7}XxXW;!@z7fqiNjcO(V<>+&33fa2(Puv`oBHlki}{$m^q8ZQN#Md(Cx;+g9a9Kka25vxIm` zQy_vi6XKnNs(Jgdz|iF8?Qjwzt$8>LLdff$Pn=81^+Z(1DdNLBh;*S%pY%nYv=Nmg zL>-$h)OzHG_+DWbTl%m&GZdEs;Rp-i z*cr%=X5v)V{%a#*^i(Sp__$xYclnNp7^^KVa7oKR)bY3+%EPvINT>lV2cH{YCFINTC=LIPRB^xDcIm(y`z6DCBEO#jdHh5s8ygDrHgqx_0cdPh?N`$ z5%5&|ob;FqB}mg#bw`V9`j+_W0zPgbK3H^Nlzc5DDBNyW7Ba?#*~;y_EiP<$nHBjo zN?T>dKunaqMb*cv(s4*MkA7PbUsRDU8#(EK{vU76L`R~Rxj;}deg;T)DUeDO#i8`w zU6cB^QnH|(qndmdJ%X3NjRAq>ByvN30!H0`WEp$Qv0Wkj!lZLFwJOcU@gdkpXkFc$ z7>J5v2t=_V$rX;PCeDF~kZK?N!Lja}$~sg=n6ULF$Oxyo{j=;F{8xL!h;FvnP_!Fy zvT|CKLhen-KBkr#kU$6F=LTss?ja8G6c=I(OT18%NSyX;$W)zcCQ`7^RA%tSE0{du z7!?GVAQYVyfE(a)p9dvB9!8f!`=vgCHxkJ#)A`7lE`~5LY|(FA3UN&UiK3cjIS(xE zZ+%=JX5ldj&3DaeFShYeXJ0;u5egLO9DWcNgE7 zDyz(Q=GctTKj`|e=@*#lMB`n!+0XR(qh$aVBzaSdPGcWrV@$6R$k9vC^kL-W@~=`r z6a#blQP-E#V~CS=n9^zlq2}8d`3w-X@a{6O6Sr2@y`Wq!oT+A8EN_l%^-wGwBYY5* zTM)1ujJW%0J=&L-kt?1{4B5{RjEa7>jCdLyqgbWxyAtCIp2rN0ei2|k8qCeE83_k(xC_G=NlR)-!5%vQ9u=3qwT{_;7n40k-z(7?5aeykuV8=$~atNSB? zOlYV-UF1k|92;iLq1G|wFx0W9k}RPacdKV}b>6@Cg2`WMLxD^^sex(=Nce(>-8rG( z6kFuH#bscAzsG;-go+7Bw{B<@&(_sB)5+k>*xAh{(@cBFlYE2*K*pBJL~76d)o6D7 z+v2D%mnXT%t-hY?Sy>7_WhmB=itZEofl$imH=^-lYbWNA%FsQYZV3ur&ApJ^1bxx5c9>wPY%L=VA|HC}k;u~u^6a2u-t zk7t%!ZHm$y>{x8aqvXzr7X7H@on*wXbSnIrsVBdn4^@mfx6Iz>b6@Ct&c0eG-p8%o z@`N#dkEAfI9|j|=&Lt0ZpSD&v%7drsUi2mlGD5Xlf0#MdDZgvH7)v%cTjNFL2wKW7 z&zIXAP{Sc0k6|dB{8x5Eie*7D+Iq`8|D`7wK!k5&9u%7m)I&fr=Jr;*ok9wpeewL4 zzVuIKkZSkbvtHt+MLDqBn>7rK0AqxtqlG_eYhS&-|E>5xwjTLpK>s+KoqzsEa(tN7 zL-f;60+1TWfdvspF#BhL3o$hTuteIJxO}O5hK3*jquyINM-@P|SCVu6_&VkIk}gr~ z(>)`~aK>NgSJSU#KVUsvM`@lG3g)f+t9E&yYVV*eDi)gq;b(x}0ZhTOd}Zn#P2Raj zDBy?gv5*k_atzpX^7x?HBV>lTHIOx;ongkdrQMy4<=KoTF!an_dg=7=Knu!JNK_xPN#Bl#FP6c?Q} zF_cVIq79k{&V{7_R3Y}mhIEn3GTI8*BWe=4^$uRWOqeVW*qJ6B0*SZ<;3xX~?xJqQ5d}}(g6Vy$a_X6$*mz>EGG#i90uVD=J!GJ}kQfM5HU- zHezlWI}oVw0Tm|eu8s$5)I)m4k zB~!fBtttZ?^@>lo1;EV|-THY#Vx3V_@B$)GlY~~`4!U}~lmZ22lVsVNs_1$wCP z6&~Z!(qqlK95cby4?gJe$I?rEf(VPAPayxBOZKXK3 z^Ak$a(`%|%5CIH6k~kNhafVsLdTzP*;cn!ZO*(c#o5xX_7V*T@XDZ-i*jxZhj#)f4 zK4BSS$PRv4`p|f-DR^ru1V?JR^|&)G@E~&hDtY0wo}XlQ&Hv!|v!i0$ZHd9k>IY~x zathLmFP$Z(<;!kYfBBe?dOk_Rk!GZGT;-aI6+=O;+;N=r;fn(;NtGBHZ=43 zJS-}LtLoOyB3*sT9ZZ_mk~fR5l>Y3ne~=8$$!BI#7${+L7_~_LsG!l zBei0nheR-kaJOk8*YpQcx5RMM`_j`bujN+r{I+hpTra{2i+Y7{MG<~lqk7X3{i5$! zF9QzseNQjkAw2WVTNjHL9%au4guK@VXpbEP6YEo9j@9CXY1O2re%uv%z5HA-($SyD z^G=U;;q!_Lsn4i6qanBqL-(8VH8UBV4YvOU2fd)))Rsp;&H(Th_dlvr0b zg|zfLt3W`*3S85o>7fI08@42I@4QlJKOf#OS6WdcQT>KOh7q5E?=$d~{Pqi~xZblT z!@BLni?eOQ<+;vvRZ?3Vlcm{UP7XMIuVD*Ks%p9|N(ZkSfv40$D0vhenY8RMq~@ z>wqg$hcG{4m#>jVXe1%>D|6L9)~utBv9<^Z8(N!Iz93C15?%Qxptx~59yvXhEhMtVA_*DW=E*OxU0FAv(byHe%T*QHwh4y zRC_}ZXf!YHo~0F$_YepEL{6o+ytA;dq|4>pqz;qmG(%w@R(iVrsrVQGxi-1Ty1Z&8 zls{^iJc0fSXK87zpSOCtU&yi)#*P?8bKy{d&q$}w{ce5H+4*HeQ-ZYZ=GJwF-<|3Nk(Ygu}h>)EDGDUpwc5Ytx_W! zXxkrZvq6JiD=QN9GCAOv*!VbO*<$=<4_9k5Iw3{#v?3WNb4J1Zz%Zd%vtEnk9>up3 zv8uK3EXTsTE1rOT95Y$uc}bE0e%nH!_9_*Nxep>5&O$f`#{Y>+Dg*sn&1gVJm|;+p zWQ|KOtWzycFRdku>7m{C(=~vSLXpA9VRilfGVFL_+*Tg&SLmEWyI_{)mE90^PE!fA zLZExQI}g{AIi>N7sN?rX*SfeT9)ut-X$I6bS~}?0$0g=r3%H^r0C)n}RHrjG*7VTD(qc94mpHbhxepx<;uB)TZ8>_D7_TfT>3 zY`@p+DUN=WFVH2H+!8!q_YECIOfEU1e;qMo_~kgGR->WTKrrt6Ewuk*z4aW8?^y8t z%5og?7<@3Vq#msT9RaXk=lskeL$_=KGe6HbDKBh z%?&(?u?WTeeO?JD-62Kh<|0UmS8F&7+ss7z+OZK|y8S8)eMwC{%^vo0af^lz;3ivK z?8dMZ%idXdLD&+$gF*3ztOCbfUe6-@#dma@S-bXJ_3fZbZLIC`09qQ){8*n8P(K;y z3*tq~wV@9OfLyzjSKz$Uv7fVdz_~oJitiurKOG6Hq3k|#-9k=_4xdAc4nztU2ub@-jMDsyKHD{YoYupMU5)mu50^V_NBi?zdUec>$}c;Y zkqzT{L`+qx{giuJ69hzmz}hw0Oi*V!NgrI3O? z951yUpJ_KAiX@ej0Fz{rlWua%93BWzemCoSaAQHX*}sb7Peisvtc+H#sz2Eo@QJCO zM1ejytEW!})O*zXaGj@x=DYBB@gTI1n<(#@&gwQ-20tY~H4UWyh378(&sa`JLws<2 zt^6;tAe3|fBBwzica2TA6yr4>16L{Hrb|_~4OU})>`6}y8P*AlR{7B`KW*^%tBd!c z4f{$t_Np$Ut*umyK~4%l)bc1OElm6$eT{tTVdz?$M6* zQLXm4aQMW$-YJN^UP@v8uFM#YQU3H@8}=Ilh|+wXDH|1L_a`H)k4dxSWxRH$+4N1hgwBoucDpPhdNZYNi1jcvlUd8OEogZrJYcI?&pOJA8lH|i{0##PBmhh*Nemw? zT_UHW^jsgPih}*d9fp>M(^TvFlVx--~0@ZxJa!gqmd`KOD73lUGnniy+A#LP@?b<++?BhfBMgXL3|>M zN(cqe=cC!N@a}kky67e&5#zF$=GW1^RS1Qdhmoo#2c~`|w1tVttkpFxW(YeT>lTA3 zf;wcR8=cDlkC*7aPW8vxRfa=Dp(W??vi`+k)Bm)$QAfugQGOFX2q zei9eRHe>`+Z8uV&+(Vs73)TlC=r&fruvPUxf!%w~2H!t$oh``Sjc7M`4NfbTi#H>< zqq4lIP!4wyD3kVWW{VrJ6WGL%>U3*!IpY2v5r0wq)=w`6VbH+_*{AN4u~^qIIEQ(_P)mu_&S$ZF4lrpd~c=Cw7k}qBV+K zXFpH+f6$u>*l3D>_OYIPEmEYvSdSd@H9ftL|5X{{L{Ea-cuS_ z?VSsR7|8#T@@?Mv%ibO(q&qyCMS}e0$-^=aJz{3Bm=_YbUW8l{GzdMDHUs(ik?oT~h?0 zFh}&wi+DyRoCsD7X;f%kGA;@u52JLZ^~pnfJjC)a(#@-<_>#L<<~!_*_Bv2}x#if_!Z2B~}BshiGwfj8N_Kvo``d~@8{x?64CqML1-qP(3i z;~J*mcqxK%vCjNoWUyq_|1&Xmq1|GS1Gy`C2QU6vGC-skC=Z>sn^;>jECZ_C%q$>R zYtC3lHY)v!6Me&d_l$~=U-;u&X7ceX=aKQCB5WDJPti+YATJC{<`TMT*^t$KH(I3L zggzSGH2V2f#v-D8%#8R%n^HncC@R0NG9c?JqE3MRxGmEkHYen2);8FT7AVnb9btr5k{O=MFNWRSrfv4! zhYv7B_gL597+X*h1+7a@#Lvv4eB^G0vv4{)SN!O34jHG}PKWPZXs`3e2(NZtPIWw~ zbD?11V$?v!n_gZyu)j@GW;t`E?+MyOC@c$y6JM1MR-%CdnfkEdT(P! ziSIlc9k=%^WBpAs3bv2IHZw3yZOd>TJ&5}nqD4DO5;Bwz6%BaoOE+P z{A%)F@^WJ#8MO~qHVx6G7~Kr{`A=8?PaB#j-XOx<-r<{g^SMRBrmCsiDddnFxP=tt z;mf}X^bWe>cyd|N6ndr*ijy}I7M4@%B=mgox=TbeIGU4M#C8XOo&HT3K{%Fq*u@{T zQZdz%lis2fLfKQ|phK8mec!W>_$2KbA3`)9!*r~Vsks)->_s);n6XE4LW{-cMu;cz zZ(c~8gl3n^YGr~Ksibn8ZaVU$_FVC$sUpjT#-ho_krh0N|4IHa{E!*vbYYV`r~f^U zBuaDC{eu7ouz=XKpKu&|ZEAaZ{ef$A0=a}XqtyM^o`|y@i*%)Oz5qD>HS??*)MhZ4 zlJ60KIcr4GK(@<&BNt)QlHt1DCjfXF ztu`N{);CsEyE9Z2<1wM>cRbCn7Chjs#1OL%@7ctil;KT)>GisL-36AgvL}>TCR59 zmy_J}QCB`pr5?NDQPk^-fB6otq6p*g!HJ{8)QS9<&wtd3+&qd}jg6auv1;WJCNb3E> z-VH#3BnZi(tPowz_T=z@?gwnMu4`gi>D*^q5MufhpXEN?=(a|n;2)H31j}|uirjD< zp8oy*^?;g23jiTQK&g&+1x!aspZS0zGb~rb3&o;JD-;$?dYM38uxQ)OlaHI6xoz5Z zytXK0VC_%xCn5#O6D`hWcT);3R8sCOvop#g5T{JgPhYVi%&4St9u?nz3qb`IoCm<2 zI?HkM-KM{0Tm4pU=;lX!tr=w?+cI5oDMU|Z9PleSka%P&yYXYkLxrQ)N$j12r~kS^ zHea%_4~HFN2;hZjKR9%+nw@}uVje%AXEipw5HlTnt342XMx{hYuY!{#J z!1w|+<)sOq$*ncDKTAMNJ8hR!g z-7mx#TB;CKI32fl_|(hSJJcj!oQCgVFn2pC#N=gfOF?T1 z^KrH$yd61}ZxxxZ=-N5zi9TciL*;8<2~pfrj22;4y_zAUg*(%Vdgpw4NK#+4mVc9Q z(dBI)-?7DjzSQ)-W!dk%9l3c(;XS+-B)Xx;Iae`Cv}TrQ8AYM!^m#0r?UjLpG>cpO z1q_uClY3~`rT0&Et7rIAf8k%qJ`FL9RZpX)PZU`xHcE}yjhHq~&*aR}h(I&)$KK_$ z=li5p|3B-J34a4AwN3VBv{XNYL03~7J-0M` z=emBta}w0M>aS+Ar9P2L(PGr)d-LT7D*ysW-z_3 z`z$N;lTUxre1QV+5GB7CXvdc}hP}K=w4jySgd095zMmA@v01TpHSONCtSBEZzZpmt zcH%7AQq{BW)njlsn``fYcR+v>>Jh(XA`Fy-0w(6DqUp%Pvx!0#Nb($}gL_!bC*1K& zup4}Z&T7CMiuhUu<{^uATN<+FHZ;=2)ai^yC)8%&yybfNhZ-A1Ed}r6|HK8E{Pjx6 zD9`z~Kb|N#@JUmmB9(r7W}$U--KfWNB#UibNCawQ16h7fyW*U?Yd_k^WzhOxD44y# zMYSm*VbsF|&{@?u8T#89o8U_?E5Le9>FFWy)4hSObQ`lyhTKuZp_chaalP@!W#0u= zy(GP)Cl1Us)WSk56?fI>CT(V`2$Jn({Irdgmzy1(N0zd2>$Y&Qjz6)q-iEk)FZ(S< z+<84VQuyCxh;GU(IEZ&xAr~V4N`2aCMdOedAv9NyG~N6SBCu(u^tN`rRrt4JZpmzA zMr?@J9aCh%XR??{U7+_`^Bzx`h?+z}wvoZRZPoaR4j zP_2OC)K+S0m@Me-vNvWY_xBaHCDxO(E)da6t><8YPupuHq8BOl@v}Ln>R+TFIT~Ej zOM&J_#Im7985xPj%elOLTO0)}w?w#E96pPV`1KeSsmM^n22EQ`QGUP}`4u_mAh1SE z>+?|{#^DLiN`okU_;$pk-@B%lAF~mM0Nh^#BrF9VsE)OZlxM2w+NJu z+WypAoahDJyO|T3>HL%sVfs&)djtBz@BZWV&bRf55L9s>HqnX!C-R(fdP@{#V)Kgfi*XUZrS#sqCwHKt41GxF z-6!zRJ8>9-_z7s?vR{kyAQcB|q(uHO|3B=#Ra6~aw=Ei0aCZn2G!R^ZySqbhf(3U8 z?(R;4y9IZ*;K2#*EeeY9k138#tSnXXtT;u18}Bz z_K&3(zNVx7&K*2U6Ti}!RKRY92-syD{&ve9Qie}R^8oL*7rU9nU>xaJ9O|!7%>pBB zg&M}PqZUkBLsv9b+ss>gNi3D=b&1Tqqi~aivv}FSJ~vx#S<~)YiWIeFNid6T`f$XQ zJ3$yCJswWET|**bU7bCKdL9-Av(LB+c`O(h+*79Hz_uBsoefJ{xyxNNwZy#`*8p+| zy`eXI(#iMSgl{b}I2Rc>vG_+dJQNPhd6_s{5zj?{curKWP}d9^+~t3iH=$>nTdCU% zL!>D62annizY#R(qCy;9aKqlxmP5qenTbA_@qyLT#-kx$7x^anuGFk;em$5Z3L#SZ zj7HyyktLxz)-GT)+m<>p-3-Y*+$zXGgvpq&U2kJ86(QPiK$p@h&~bBtmsoXfTV1&E zc(KFM=g4Uad`cNLzkX0X1BtHk8Y2)=Xi3O6Uz_`m)G{(M?>o|LRH5PeSeyqe@e(z z7Xpn;9+ULV#^ZXkEL-Pn@w+knV{83C;p-kY;X%6No_*@C4jzUY^vLkE#EZ_71?I^ z;EkZ^VnMoO%ORJlLuANkGUc@v##Fi+DygP*4aoehD_het+~RVu-FOP#`Bx1nP_RM^ zWC9fR(Fu^XGWTY4C=$O)XTdlVSJrU=dWErUWq8dJTC#OC0JC6WY+mALZ?d8+1`3} z>ETq4&^ND!D1;HR`9*(J;J@O`fL9IjoX4*7g~C*eX~W+P*fwi%cu$jxEFw+N@ zlO-t5b2kNhF+w}VYtAWJpeZ?tN7 zfe)pxM`j?T#6Wd+ag6UIOsW+^LEvwNNA;{$X!E$BH?G%#7O@8y>L&tk^^LP5e*|%d z-{Vt@-5Tf+Wd?WC36H^RycfbXAWaQ$NN+-Iddv>Eya>J;DOosb@P_y)Y>2zW&tpHA zqE9Z)eMAlm{q3G!2FY;M-sb3YkQ@zW9wri&61lMQGzq)>`W29ZUtI%MJ$9Ixu^IPGk<;4#r1DjjVl4A8n%;tuF*;vF)c(R!-}S^>Y{s zxb?AhAz8+vm{8}?Z=+269HI>zGzY}h2Cz51!26mU+rGqD-t_lQB!>HV&yft6$bT)0E`q(nhASuvYdO?2hNX& zo8p5n#ei2dkp>|-yB(HNd<{-Vidu=j)N9!mAU>|tkxlpxt=r+4EB zbqcU(#&}PH`~&#!=>`wSgcWbMiSUog>8QBxvh0$`Iz5s5?TJNH{LZ2f6?s8Sets;7 zz29-f;IAza4p}ob4Oj16OLV>%zQ!b-K@P*SfNMKQ;8 zYldtO?_*J7pYgd=h(6-T*8g&z3T?jVb8FcPR`kO3rbwdP_GWXDym!ba`74YE>KAB$ z(5lRTBcJ=ydJ7Q10z3|>>gFmEJiDw}xp-Vrx2eXIZ0d@KbEUmCI~|}PFg(hWj{=#k zm-#5zzlCJeUNZ6N@+Y)~1@)YyIC7J11FIFMG_xZjHN4haYscA@#m_iTMblS^#0>=( z?~gsu!|zQx4Zy!CQMf1lv14AxkrfN4z2?A%#YV(EgA3Sel3r?nA>!Ow+KStI9Uw(% zd@BM)nJCqD0#Uyt3xW9^wa2{6dKFj0OBa5(iIUF}HV9b~mF|xOW=(p8KTXsKrC}wZ z@E)QFBef|4cH?klz&X+hU2KN^nR0u_@Z`jwzfl+uC{bSDT^_6hQD;sK_6CZ<;mfCo zsstVI@^(60_b_oFu_N-#7$dC9nIu_#J+BE7*cyK-y$D(knZ&M?#Bn>4&S_efE=oky z9Bv1?U4W94ert$ITFY=I!*!t&P(GlBDEz>SU7Y-tQt$R&N^$Sa@kogPM^cdRwi%`v zvL(4<*+}J*7`^L&g+i91;=4I#7PSS-j;p6$l|U z$Hn?c^2l?O8Tzh0F$e?na_btX3Ij{DuYT9Q#8)b`qT0P>e}&Rqwy6asi+&TtWQRa) ziz?foQnZ*gJrdoz^;(oLR+TYi9ld3qD~M(I^zcwMXyh(TP} zOZYv3Y%NpatLqkLwK6NAHnRG3&o}P(!oj8W$m=c&rE!(jn>Qp~H*0lz8UgQ-e|S{j z6riR$WveQ2g~$Hs5JCSOX$;fbG>p#NzaRqPwx(2k<1$u+Ru9iV|!|!IM*_PK^7zJnKEYl`UfPMOY);fLO3lbp>CnF zJyVhpyk$~&+kSi^syP#Svl^nO;uR`2o5w;g_dBwnKc%*N!nzx*S`H^56byU5QYcY- z$PK)iHG`eN-VmDQyOk^cH%sALETkg$oPYQcYL=yU|4sJ5yn0PHnZIPCo)~1~4c*u~ zJdvBJ#rE;fnJ!0_2#Xu9wAF)E0t65(aVwc|mIHQii&hY`xbwA`_^pwZp+dsOVmx99`hQuY4ThN;vbv-^s^j`lY%IUz(LIQUE4)6zu zP|#vCw;?4ZMX3S|kDwALW-ulS`^FoYdbHvx$!RMzNypUz3A02H6?+&?B$2#aGdzU4 zZ^(DvPR=Wen76zga~X^A8;2`+TlP)Mg=Vo{@3s2Uo%_wEm#)@7mgxnF$=q;{dw~4n z;l;2C*qy%1XV-q|uI9g*RgKW_f<)OcBVUE2ti z^N0u@mJM>8_-+Mx;IVa0?B19B=5tnOa&}*qQdqmG zTA?Suc>>#kWu?q=PG z??0mWc`Pbi`g~Zw5ECFrFb6_X1oe>Q4q$!F4|Ci=!?-$6#TP&x8Rc^rkK*tc-WT}H zyvO?61qUG+;mwSAB3xZOVgN(=tKQwgYXLPLH7z(?tLqb#pmLzw&bWM-AzJ)F@ZXpil447C|cEGh&#)3O|sIs1j%@S+^{O>Ky1$;TA=_ zKip^+8U$do2O)n6P3J6ZwE6T9=$23hn0H;^6u*aXu)?k1!9K-pfFd_S!M;%V(n(M2 zTUm2E{A;<8Z@VW~57$BHh=^JkLg*TVP7?IQ)N1`U^79y8cJulIfl65w1!l_fSD`ZU z#;x^FU*0P$hL{wU=s&9bRPnt`>=RUn7DR=~!ei?A{#K;$%~mzU*Y)2NsI7J}M5Dj; zVv6W)5P1ly{7HLk+iq*wJ+oKnTO+dVU5wugFIBsuZ#A61QTF`D8Bbv)NHlo>(a(#% z={@8I!urJN_|?VdLn=xVSCb4YrBMA4JWROUFkins2-U|Q?+3)N>H-_Gi-lQxJlB<| zc^x$oP)`#5QW78`;1!%%KL&dcrb$QmTSjcodF&2=eO$izhFb(KD zBO?~7{g01?!S>*EK7MFuSkb8@Ly=qbM=|1A0^#8-3|x|Ez{M(KFqW2tZO&Wf#=mc3 zh=}*`CkTR0{o$ezggwa^N2U$|hlYq21KJAdGw5U4;(DidflBPi80eAB(l?BWngip9 z8=L+8VkB0evPQ)xje1MTNFaiFZ=kgpk|F`NGlw_;%68o$0BJXQh!vx%l;ueuSBB?= zkV?&6GTS~8^%v8#Uw5{P3XnK}vAvi7O8w0$8Ce~X;T|)G7uFAU$}t1U83{${%Tl|{sCDp4#o28Q!rmY8pVre4%ml^*f+NHQ-oAxT~ zSo~bVx$fjKHzw$AWHc_EdcRgQge8;mG0&aU{lh+PDb`?2>fP9xzr8kQRQ09I8`ZuK zrr0l02?i2mmsn&oaF`bTIYyGD0h=v*Rg-qBUm(m$&rWx^d!3YTF0hvy{my?{d))s$ zXOrQMof(0G&mg9s3{+c;qyTk<7@{aloh{9AU{}FRpo48us3)Vm3<^Ep1hzpr}599i6OLp&sF39S{>CT9AD-9X*7|>nUQnB*TmhL((hTUuyw)?9c{FuR(})GiJQ z?Ql_qEz&CQgQkj@DC8U1*H-P}kvx%XEARIVXOPhYQR`y1UiTB8n)Z0Au74PSTK-L| zd*#f5t!WeaIt;!;;|{rh{9r*1a+_P zGY!jGdUB`*Dt^CctgMCKb$KuIW1$6s8AhnHi)9Yt=b&|ju3($pgNAo-ZP&dq1vH(-Q*ELZ)j$XsL-|**IBK8bokZdD;?E5JG602z- zfbu2r4>k+TbD$7FgOCqsJm8PV)bB5EBev=1ft5l_nWg~Xs@yY^ePSG;5x6JvdL2v~P&9=yCJXAn zFVa}ht|Ab-S?kXHR;9x`9#lMqzfra!H9^}jWA=P{fQ~SR{IkpU?~HXSAhZrX)+~}9 z?*FurSfFz@qCF0&|9no5Vx-m686RN8w!xg~j@h3=;LbOzdN8E$d{_k`Rh_AEC|5QPVK?1j=DPV0=lq{z) zgjMvpOK0LCT`N&y0i!)Cn^J!_HBw^;znHvU;S3Oxc^K-jO(xL~(+r4O-J6>unuV>9Q3d7}# z8u0KVWN~Z`1g5p;srzei?}&RmW`6Ok@Ipz^u*V0JYaK+b)TZ5yQR@TA1<4ADMIC(6 zAnf40^1r{;dJaN#kIgMF|Emi86X_0S+g_XTYDKtxJr&t}}$#vS+qdh_`0N zUNbnR{+DCJrn;@M)?w1|9o~Xx?h0!E&aUX_qz+0j=Pcu_xu{Md?-C-6>4YqBjK^qf z7uB%(ttx&@Qd8bL5B9V*Asd#$^F=FiX!HCyY;0uC0g`jgN8AVUXYg2{e%Gh-Q@`|U z4QvXb?wsX)1uYZYOK%011YI#DNWU$dbH)B9&s|n>$Z`p4gwze1JpWhG)1Am35F=<< zpLF%~r#F%a3gO@}!*l7guuNA+nEDmuL&ip2b4tg_laqIoj+-Q@1xqP*2SByN+G_Xt zeR5Ci335WmF_eN{_>>jrt@+LWxHz8>FrSYIqT+da8ZqRKzYnG0BVNZz!)kM}UbLrY z?&S#;dUnz_E6xQQ^qF68D;cs^j7Gi6w^E2%Up;bzKm~t~Uw*y=k7FgFZmTY z@HZ~-C0!{SR~-~5W28PdYoHP&NdE&B6QZsm5vDX!kbsxL7B!zaW0Wq5ilKxpu3V5p zo76}wK5B#y=?tt27J4MSVY4Cmr#<1bov;E`Jk~IL+ixL_ zsn$(1PQ~QGbDTCAY?-?d$l2SNS2E}**{+9X{Bb!PT9ux5-}@)|m2yDFMMg%RXxY{L z3IP26IRjFI60ujkeEC@L7T$IE&M|8mMtiF}4dSZr8^)qk$Mza@KriCOB!NPt2)p(v z!kWY`i4hTvUQ@yCprZ9N(ZSgJ*_9%TkV2fr_TP-m6~gy`8PlvlyM5#M4Jl<+@;>+P z#q&6bEfZp^!KdI+HeU5J|Uo7>BYT!YenL-rVi(_>;U2lO$J7>X>%0ZtQ=* zqoG=QNjW<`cfJx^-O{k8O{*RIIi&0t*p~9*UsR9q4D-u5@7)#{GDPDspUDvd1=s-n z-589s9eL#3qF!IrrZtrhh>=+ zRnp%0+rqb%9P%L?r_UT8e_^mP<=>>C&IClMvLvk%hYG6&d92WUjA#sd7!2~3DGfn9byj5Rm( z)GUO}A4#2;q0PfLyjuiGo3*(t40vzJ_mcYiICD`XWtQORxi}wM5ZbiDo5nq|VMGST z!UJH*X`+)F8MNp1h&cFdIM-0seD6)7@F@9D$0kpT$o^)R$_`+ax7vqGPr8SD&m<|qE20d$3gN>d7%%1s94c&?zoIf@QcyT69-esgjBwpGmVipo#_xL zz9zXl9kV!$%w#*j?^Ev`7ru(6-irP80^|R50#l>+d>_0n9iJV<2i66Bi)i`8;h@8% zyosc8mxrwqrB#0p_qQrjUS!}WE!K6OK~U@32{jq37iqkX4bSN(;iDD3xHjBaFux=z}Pj6 zochh(QB)W0^`TOh+g3IL_IB(O#F>`2>uo!K`HLb+0QNBRIUi-7$kx2%$Kf#GNw?>& zUgr&*u(PM|J}63puW@AOvMuzg6=sr%K0D_4$8D+LQVSzCq>_vk;gOsP%g5omS=LN| zo7q1mC!9J$1rF%oJV7fNk&7vW35~|CyZaN1GF>-T(WYHLR`k&~4_a;`+KVHx_>nIP?OrV{1esXd<31d%~ zD(J+hi9i|C_rW?)h*i3d)u)P!GFF~&JH9i2UV6MQ^lP|q2 zYSJ}0`TNiJNtEJ`Nvkt?!tNVXRPK`qHBM7^t<(AEUvunLX0D(~2K`?}l5Cqf6Mf98 z^*k?5yF?bj2*r5&_7rTFgYk4&sQWvKzwjUH;9&$Fj+9xdmGj%3TmwHf$F1*qkA)DI~V z`s>)b*B|3QdHwv-9{h5S8=0G)4<`SN)LJKiJoY->R^2pTfT}3u#%IbE60aq1`qgUw z=yz*%F+rLtC@3e;>Tb>~LBtZig!MCr<8@FRbID~^H0sKRKg>TsNw52f;CC%_1w>wx zTf)xFEqlT(w$kWd+n^k_9~q}Qr5p+Ijdz-w=5A(3Hjx&;i}&YfI?WtvNXz8!8#`4! za%qj``v(dAKZbWF(1(&ck)E1=_j;(|)Z&5j?WRdmi>NM7=NQlE*o{~sj1GlXT4@hI z82M5Cw*J0#HQMHZ_0;gMm7{`SC_q@G9Vjxy7gPUW;*XM{@ox+;DACZGNYbeYqpz*=yZSgxyZoO`s&d!&j8>AjK|D&BlmH}`q^6+(e;XiIGkS5@w zw8;>bdEURVD78D(A97uB(ew-V)T<`lWVPucH2V9?atY5m7!qP3$F(*G-l~^px&oVk z5iYe=&?#};Yd;96b>f@>V@0Vo_fZ&w`1PQ{V6CHWFXO~sS1OeO|x?tF9 zR;%~@k^vvXY-4zGeEC0Z`v(NTE*}m&&0gdXzF481GCiN!s#z9akFZ=>&hEE9pZ2+- zKM(Y)Q;JuPAU`HScd6UoH#K!hHaR8okx+{`)vyAk#}NK@6!%3-oYluBJ^5 z{*EM2*ZlJ_Ej#eZP-Nv_UH0F$+{;ILy};TJwFbJ86#odR{`1RD`)77*3D&~nZ|eJd zZ4ki0e^2xOZqS^9(D46V3*g@e@iO%PzZ<~sSll0EUn-72uf*1fo=%C5igKe;Ji4;8 zNx)0HeC$mXCk(+(^qjHHyREy{at|;7#?E4Lhm>ME7OxiT_e3n zGK{Jsi{j{lhK9C0-x+b5)p6F4mme$LoSmMYN6@_ya-XTmFk)Y__4nMS(M_KGQiI&; z$DQW9;#zM$UHtP+kba{)oFXX`uU?kIdzsOSU%_VflE|A9nS##^c>hj zQCY4k+GC5X-s|D6SS=RyVT+Q#O5W=%{_D^-^%WU}+f6so@u=Oz&HXOFw|&P36jx&& zEDHy-^;5%j~M34cvEeY2?;b5CI&y!|NWF2{B-WU&(WX%9vr!4Bvl07EXx zUWR)pxbx4SN?92hnI=I`&$d%u6^m%sVZ(xSw~JgN-XrzHu z(G76HYT!+xC)1}3`6rb`#M3wNKl8}aSHUaShaWO;Bl4B*@V6fyk6FE+uSWivX&AdM z&_M9@3=*)gDA95IonNot9ppOV8-DQgu=-Rd6~1A~#%)zf$n7MZo~{cC2{+l>TIZ7@Wq?ZhNGiG`Qa7 ze`?ym1t0uq=y*7qEEsKVYG}VKqldhZly{3ux9fXDFLMms`}b26*zKcU2Cq|=4fPdq z@ZX$JSqmh)zs+i%EHsYmC5J*@qNn{4QSGKwf~T{ma_6=ZQYyEV^9*(?f-93x=+p1& z+M-{@-)&M8n%K_i2Y*Z(FeC!ch4s5uqMxpxPRemdrcxaN8%s|oJUn>r3Zl4;*NWeG zKb<^rD#xB-u&=n}@@~EvOEPBZQfR?xU4ziJL)kE~DPPATYZ6}@;RXcL6O!}Ek6f5@0Ul&h%x7OCOJol9|!*mVq!@01iS532r z|Fp4M%*+7>DpM#iah1AhZ|6P2I*a=eMbig7Gd1-&+I?wr35RgX+}vCn7vm_Jq4kdt z&haj|uR*2tX4Z36Vxj#{AOlA?Y+Q@7Jn!^KW|KlIyYORq>zUN11FeyTg+kez* zcyXP@Y;$%pSh$dRB|h{X!O8?s6^>_4j6a@ z@8*rGpYmSS;CT`z!(&Zn=Z2c%9fwa}ra$(@wA`|ch9d{5FcY1{1UFvGTimQZJzhse z*vwZO@pa4o9=bi3;B4IUPCf72Ys_o}M;QPhJ&0R=PV6X=F8s~hQ)z!3v(56&=>enx3*N|}M zICM?U$+8lqO}~WjYuQw`CdPLuTs=7crxry~9=AifPFHKEoA<*p?UX$0aPh&(M3>F8 zZKHhP`7u>O8xN1AY1Lv?urdAEq0Inijp+dpr(6s(mDkFMNGTt)LQ2%G|Ag-^$RA(I{{>WUWgGA(W-}r4zGF%G?JufDf z(k)NiSHXwetGAkoYc;O_Tft@;i9W z8HVh(jR&E6(<%8*LysBG?n_#q&OR3@Jv9;J3UxtQvNHEDNsxO1>4kgIW@g~KSkT-z z5q}b2l@eo%*4^9PO#V$56$CHf2AeC3=KE5A^CZI1Yf26nlL`~~4}yNeCsqg6O1X+` zli0HKgv6_@P?mSub!ZE2fH>rW=7I-h@}Cp_;d!rw)u$Wc|!EdCRi1u7c;yXV?Q~zKQLpTg z;@Tj>(V~1mcNJ;ZeJ2dH^QssBJdyf4RnHCo(>Z^-{q+ue$NV;DZ^h;=iszp2c5w0W z`9pkO9J#L7?KT#e3DJQhGCOzs#BcKtA#-iQKB4z9?kD!lK7~>HFY(v6KnB}*Y}p(G zoo5Z=PZR9;j1)5Qhdd!EUXslld1| zJsjw&sRT5d(u`%_96NV#(|rqU60}Rq=LrsB-xNxhe3FT{jwFwP%wH-`VKv32#vFT> zJoLeVNi(Bpte4**dn1z7H%SZK263HQ&3t3G#Pe}sww-MREviYnU4b5F<<$9UBHC-p zMby3Bo;_ zCnYgYU8fy4y$oj;31Vb1Qek5Wa#&94Np+fZIWEpKWOr8$9agJ%GY!V2y&_A4Ba}C* zFo~rtC+*yPc@v#mq6}^m35GrUz=RQhZdIz_5a4s_(_Eo}%xM?0svU2XQ*5G1qKb?2 z;S`nj(W!PXWPbU-ghL`g&8om*5dt9vVB)pc7&8OC%`(3;wFa*XsVFom7!IgZ0kMGweG{dnmmaxk62eXp47I!m1y)5@Um?ci8E`M2P!DwJroI}M6;b%|W+u1us9zTv4NJjMK+ zTgYyflEChVp^kg+tK-+&QPnG(H|}xqD;U3oC5YkLFq%W8VoCi#ps)~aw6>g2f>Rc+ z6@3vxaAX6ap$34L z2fjHyiT>Yv2MTW`fIXE2(q2I*rXdcY2@tCauyeUx$5`95ENFdaaXOr{4LK~rQTw{U zZr$dG($LqtY~2^}=Gc;h@G?%l>`!L3MY6X;p^;Y@zMFd8o93TalQ*ZE52B*Gxgbc^ zmN02Ip%coErqm8Tb3SuDD6PpnJSO&^0>b(=}N zEYA|vjnJ#DFga^rh7*SWgVtRzpIbcj(#NZ;Wr%a*3PUG8H=$(VfmE;cIfwYD-b zyS^Lk3T#u>iDml5BuVTQ1SB<@Lchy2wwcO@%XmduKXc)YxReH}IR*YOa^>+d#;qN8Qu12FgI7T&dJXL?~&773C$dU`qwF5#ILxOAw~!*u>YsN}0vp?{A)un(k`4nKU-tqNOblU=6|DTM zmnh}Z)D=Ety(R(@yx56GXmM!KO%K+gg6w$}JaT5k_oswUG~vsLyGQq<5l<@=bgJ>J z4+*I%G~2UF2{jd;uJ*6itJ&utD+lYxqN2X1x=csSXJ@c>Wu!dJFTA^M^%{{^840P6 zhKFC?Y@AeNUpl@sm>g_KiE1K46T8LX7F*()E-2Pb_DT@v#T*~<$c?I4AZ0yp@Rwj` ztlKT>5d{yhn-6%nw<={8PfYs1Zs1S#GlUYkYdQ1xy!1RzozGwAlG33(KoiJvg)(KH zZ8aK8B#R00F^_bdEX)o+X$Kz((XR#GsV8&Jgz+_lG*@)<>jP_j95z?dD&9 zFHG~ucLy9~|M-|?E@P_SvP0N+tB=WlsKMF$vL z__MJIfTmDS-GS}!jNtZm`YX1_UqR!I&{BW@83Q7kW}8ziKXiJuJ3JG+jo9~Bk<+EQ zzPo(He&X0?B$~AuT%MI{k*zqaw&(lkUigD#DeqdQNzya;eqvPxe;fH{>3aP`fu+}Y zo}n0$TKRS&i^+v9a>)aYGb;aJ^I@8p_u*o4 zotc&Y{B@L+wquN@l_O$gPvN)4=HCDT0{5EKIT<94q_?t)hs zFJ)F1PgSFv21k1TRr!wNqilLc08N&859T!FFcDPw)ED_ozGYKJc=n%6=AF>asaHv= zlLYLkn8&vV<}G;CqHuw!0V@m&nfC`v%}rPFPby2gncJ?H@n_2U5Q-|Y zQd6d%9$gmaM@QK{@7P)JP#qXiJB6#XsY?=X`an`HjlZj# zdZ&|aAd>w28dEI@_GvJ&Fn_;G26!dAPs(`i3YW2sr+xTGmdDEM z9bS1s9_ctIZqkjaI8z0ITAVfgJl?!R zMb0b!gVin@P3wMf34BUF)qs*!-9`J$>Yc}Nw>D6qr45>J#Pl^X=im#Let@0sS&I-Sk z+}+N?x)p0E9woh{E+UHZQ$T=&KqFKFNQw?$ zxz!?p4VjyNgD(pC37s0RQL^xvprG6~%J8Qe^(4~EFXg_9NxErPXu`9`JJ^UFU4H*? zmq4X_XepX$(|RhVE{t9mZ(VfxiFg?n{3E9R2>{btUl{Wquuyw0VeTd~AM<2MXVB7L&V4@o zA=3PHZk%5{8krdGWy|?%oR&6dDTT7!vo#8&R@9Fz1*_~x-en}m)4PLD5Apf@npy5k z<^>f1i7~LOTBd1~lhWISU-+AA$%82p*aRI2p4@<8V8Ind`=pqBoP?3+KBdkw55Qyv zGLeqC0e~bZ@4{(P)JB5McXGH^#R(cfX5luMrPqxJV87%7 z0zD@XAXpXJEPSoD7)4Jk79Pi{RQ_eygZwBMLdTd}fMX__zwYrSeLKzHOJv+Q$C>K~ z!}>8y>d~%FcIxr5J@clAvg;shFgQj0cfk$7!>J!u4K^9O%dsl|;`UT&!T#u%jNp@OYkD2L=-I0Tmlk9=-IR#%u`U{HeG# z_v6i`gX}s>QddtXMz@}*rwulpX2Kq8QSyp)%MtdKui~EqL1af^A{^RxDal*}+9Qij ztDe`DW?9x}tdJf}5UMIyER}vB8CGtOiwW`WM@hxSx>;t{*qU6F{UvzQi|gzkqQ!6$ zmhDsgW)*E$@Tq9jf0P(;rfWy7GiS!cnxbm&;us)N-_r>Qs4Rrgp$cUEgpz_1ksa;c zevVVH#4%Gt!OJ_(FH@wz_ru?UN&oW>P%ace!Gz|BWI42Il`phW|!}|Ib7Q-GAs8{ZTvj2u*`6y-RAIDEo(Dql(&{{ zSBGzQtfz}V?f}{ZW&n^ky8?yMNUhoAFi<)S-`}1)G*NO4Dl+>1>jcCxXue+o9l%F5 z)|glX^3*^O8>$kj<6d@f%Ci#W5U5WB@xNAm-k>r?4bu@w#_$7^Esp+Kl2Z*OB+=Cv;8%YR{j;Nlaus^uCHMXZDQ$0a3n? zkgy@>0UlNov$2rl1)4D(D`h~BP$P)prXzkC)|I4lRzLS z-TnI5(<=~M=_&?k$#?ih`R{@-@=6oC)j|S05&Pyz;nCnS`*9Mjjhyd9u6U|H z3Li&n(-acVcQ#+|$Ma0%aJqU}lpMSZb6sx*EqXkM6MzO`a@N0FdFq7Wi%B&h{Um^* z6wS3?v;>V8dj-^PKSw_J3gp5o2u}&Tv+yUmd?TgBNN&6=bJTXdvh$NN6LH$=k0HO6 z;?22}D{Cg#SM$OPj8=!CXR>HrAE2SEGCZ&5mr&QI30gA1tw3$gI;-s%J8rrq@GuxU5L>8m{CAUX#?1a`NFEZlTFfjhbj8lS}m8sKWQ zzYoj|d%$}uZ6__RAqT{U`^(fm^YNlE+!|OiyVo7La3TsbPlZl09X^)-*2 ziqd6ej7-2}Tn5aJ0#}sTS;Kx>`B6>RleHlN4ssAnp@xi|_v!xpn0E4SCGuGnC>Ux) z)spPm9H-kL=$A+dr5$U^Cw6~LMH_AOgzArkrpy@eejghL`YOg#+M}{~ZV#c98MZh~ zkpQpdR*`h~ie9^M{QflBo26mNUV0u}P4e$pWuYjhNEb%5&MzduVNfIiKHL<+`>QHc zOchWXed|i4*_QD1bfl|)is9C&ASijWEY5#7!I-4p=JuscZt)n{+;G7n(u-*6B0lpz zK=G?KY5@&4K#jKF0#Y`$Q?J9nrIf$|R1t}kJ6vKieXFC823zkTmRO#6b)m>j=ityjP6f z!6+!Y1tseitcUx$k7qa^9Cn87QH-V><^5Gnv!dx5mY4~a1arZ^)#E8-sTVxtABGPl zLh-QVg@4r7*QY#--wuJ!p)t_B{;>a{@cud2=&w9JoOpjrZzw`qb}(-nov$$&tDO1c zdE%~n$^M|CDH{$4d`D z?SR0(XjYis#XRAL^gf5=ccM+AO_g(<>1QElj!$iwpC@ueT?-!p{S#U{swToEv+={8 zvy|{#nkVW8>*eOa+5EF#?#@$?6=`{Ad>bKTT|T@Syho0*E zilcd#1O~Zts6eJ+tWPIO42rxrhVA#}o0k_W(f->W`SZqu{-q%5c83RxYG}-qe;b-) z8~7fC0S5x<3oIl}Bgcs-fW{yyW|l;?A>Ehs@6T( zm27@w0dnZ3A5&vmTi6kI7-l~N z$byQ_hyBk15=+$(J}LVL^J0S|dRL7bokGX5;Z6SFTc?l3o+b`-D-azlsubiHU~xYA ztSNgfJC&ZNhfhIML25mhWUYRkj{<}JiGdV)_x8X2@)!)YeA)Qc zwB9*M21u_BS>w=;K_+*R>zxz9Z;n7EaVD-u!@fI{Eb>0@Fqze9AKE$n=rMB8hD*0< zY|xG&hf%9OEM?YCkQ=)AA@rtQN^3Ux`O#=!r~@66$Ln>f`?GM}*pL^oA#Q;6klZeH zdX$)@zhkzmmtNW95tLli)*LtnNp<&u9|4RB@TIr(+2(;X2f(IvctU3=#5}%_TT#5| z*^JW0ceOB#ow%f?PJ?Y)vm*%MwA-4_r3JGwPrE;y;7M`*E}G@N)ug|qFXYjp3GGh>@{8WP zw-^Gp))hpU$K%Y3!Sa}o(CJ79)7+v$ciHt+yZM>$`tn|`qt)Wf zz|Fp9k9bPLpLaW5|K}2;Abz1wEa6;1bj!?|{+9K7- z{8n4+wivHD$TLDVqan`-K(R&IOnnGhU`?Avx60OUY%jIkngtS)2alW_-LZX@xN5A~ z9ZCEbV83R$vbTf$if5Ys2Gc`o%AcGAj0IPVtlEQEV9!21Y%w)9jEzYD0S6SXZO8c{ z4ZMW!I4lET9kR;b5SgltO#%Wuuc~PO43>Nx8SxMfB%{O6&hYKV6G=T_&i)u|EB!_J<$$VAnX$TnptSYuBjvmczw?4lI%2;) zSwuOXed9uq%XHmn)sOK=BCHOR7Q!I8H_l_KRI}({g%8_a%4b*)z4YN?FR0-@0EO%^ z7L?;0a%8#1m#HUtBS1;I70e(Jhqr5XgsV=D!wn*)-=x?UuGoLO7zqhq+*8Kr|zHaNBRltAXj$LsaQIiSn6Nh(<=B6G`R`^h9*o-YWvpT7%cJbZgJn*aqs=i}EBKPK4&3K(j8hZq z;v=5RDu9ujVda&Dp6#*Exh>blY&d$TO&4!43P_rMK*Y zsm3Zho}evXB&Ks%1+FDEs|A@=&Wd!Ns6y_-3tm3aA;Q{gl_eNM^UOX*&>p`qs;K|y z>`b3?ik}basdPKGx$bN(Y3iF8@zGFouSFf@q4hl9rfcEuj)#>np^rF%57sc#^?1-% zymFCC@^zgirp&&#qIVS8)FJ(_&}`t#M9s0gtYn~1Vh7zP96+C4Wprr;wAEA~L=Utd zW6i91I)tDV&$XGWa)O@G|7v<(d047hj2V3Z*?ERs*D8LYBU$xwhYNQa&F8I&-E{9b zTc7VCAg&_sfGemW&MeCm97(xCJonDi^{sheC#{QxL3kxd8MaRwh%QP39c}=wBB7WG zHA`Ka<DkYByL1YS}H77x8}U8^bOe9e3ewi473s} z9aVqD&pdOAE5a194CmjtL@2;3O}H&*5LLl4>UfOGt)_rYR*`x9WP31wc%#LjK~tLf zg-+_O)LO`Pl(F8$@uv>n2%a^AqA;<7HFC45D(k8rVx^ker3DBWDtwqUtO{n>oqT-@?*AiAtYIH<=Z) zURT^wj^jFaWNTj>;)6+?PPtCa=pFl>8IMK}0z>N#!uo#b`28Yl)eev2*z6X8F1}}@ zbZWkMG%++(aci9L%HkqtPuQek@(FXV!tnqh3ZsqPp)WX7j$SvRK&)HSM9+uDWCD;H zz}xm#ew%!YdGc)D=E0z^0+rcnSk<=0Ht$xEawN%X!l>!zvkSl+bwMK+i?6tb>NosL zJ6zzTu|`GOR|ws4!KQ={Hf6Dk^1<>U*GD%2jDbaTxlVdZAbJYH_VIhygL+ygt+MBD z$tOAhfEw&&Em97U%{?u%vxad1z8KqX+-aH|Tw9zuf3;tNYwEM^&cu{PW}chCWSrI9 z=6Vl~W`3{SMop(?eu5LbJrQOteT5@w;@eQCa%13_&LEpdo2^3+8)xiS6QQlr26VM* zA&a>EDsfU!nT3lXwBso+J32hpeE_~n%1lmf6|hX~pV;Q4STbmCx<15p@hiGb7|U~N zqP27p+6*Z@=eCffsLXf1t91kZ;X5`96UkNbXg~*z@pg%UvEQkjG}-VZbsBq-M<5@3 zZZz@iT*%u5@_sN&&Jf`7JwBNy#5U<4`x^`|e_^y8cJU%{p&o zWkm~ztI~NTH3a$3q=V5T%};`MDjE-*Z&)x9*Y8m^JM+w6oyd#ZpwF#F$%NRwXm?uhIAAn^mLpsbTtwf=Ta?!eA!K4gTWHjt84PGCzm8DF7;PhaA2Dbwt7qMpY zBbLL>5+UVm%;kD~MPpd}ao2Ye0r!ds65pofC^oN1yiE@ky%ov7IzF0fmAV*l<(L_k9_(ur zW2$iIs(0!(hwXwtfY*BqZ9HiJeQG$yd{jeJ<@^NL&mj|K9|w=9?@2d9mgmPYrI zxf)8+a_1-wk^5exzGDy4(eh)cMBojU0H{tcC4bUBe^>{cPn_KHq(JM&Ggf?}hy-cn z{)U%w>H3eVRB>0)(kf0Zj5tl#^n)UQ0;i)J#9Vt+v1qcAAMepS-)<;!k0q+2m|tLK z*4&{yog;4}W*^2C+Lfv2%)Wep+4<4oroO3wg~=M85Ka7;(>X4yF>(lGqun|ucb)iV z6q-K2-oE{~n9T{6HN7a;UfWBe8npO9XP|Xay0_A$N)H!2fWwIRaxS(`oFJMPLYwkd z(7d-AHky5eaF~bK=mE{LLT^lxlRmFB_jnHNc6l*A#eBgcn@BeKQnD%y9>7A4)i$DVE+HyVA|<(Dro z%;tjGsND#azV%_8n`OIiO{x}n+%wDVxVt5G{2ZTl*#9E>A^@1KM_PNCA?0>KlP+(M zR3Yv7KLQdaZeW}hE)xxZ`HM(yjp?@sX%_2{uS#&CA~Zpc?!M>~In=D3T4+nY;u!)3 z18pt@BV%WU{Y*<65H)fgwO`wR?1K}NW>b#0==32m=7YIxy@sKtvnv7<8JdyW(+ZNT zLDoMw)-52}uH%EUlFShw33w2V5UIIo*mAMr6P1Mlzw|L2u{)$B{m|r~y=>ivBkBAi zYH!dru|E-15w=9@uiJU@9k)=6xmEJ$@S$WC6our8X1_)~hae3zt3+9I06D|vG5ERN z1BdI_wA3aYy7L~!3nzvJFWsXz@-l`9kpVWXe zD*$1?dcFFd=X8q<28eFmMLJG@Mz{h6U*5}dPP^{_W(`aGNPhY%4OK-E%Vi{2E@KSC zH0kvxhJ9sE(!^Yz+o<*qs>4Nm@ zq0uvZ1;trG&I?9iFjrVUGAezox!#a`V*7>Fj{aaVTBAA29s12Ij;*l@x70`D^Yg?T z%qy@TX*0VdfxTyonZBo@eWVO6vHW_!d=}SIu z7MzZLH2QOK2^b?`X{0f4@i-V;CV7CXow})hF32({9w?UWzkOKtT5R%{)h!GFCRwb7eq0wyPDe zQ$ViDYXG!m#VC3oCsQcn)U+jZLq6AUaX-J!Iv7zO$nmw_b+*n4-Cqb~IpmOTyUh#> zuhjEn(0V34!?Oi!tc^tjA}B>k;}@lDTnM8w%@|xeY_y#uKER}%+d-{e6bEE<=MmI3Hq=Uf4WZXTa};)A5+9G zm8GA5s*QIJf%^b;jj4v%2;=gyPK?A~l14s>1es4YbzU6&ABrq=Q!KM3IRQQ!bMfi zE#D7$QS#^_hO-l>7ki}>JMZ1{n^Tm^FK;R8E1u8u4ZiFSU)j`b!euwP>weS?8?7Hv zz^tb0oNY|vG4;BCI7g&Oua9YPLD<~1Lw^Enny&zj>civ$)@R;~3srEjm;ki7T1`yg zm^_v)x%lh&0dRWs7Cd1Gc3FhZKQpts8p{a}#NtOdSI zdi@s37cEvSGevT&4^Mfy&fXY+66@~0)|)M8k4JWTqVl=0j(3Cd+MS@WHBonygG*;W zJUnDHsm;gJ*m(C4$jPX7KZOM~=_Hd&Irb6D#xKaP^36&2wvRnVz%=z92?aWxqxJ5@*nOSvoI_6#=quivM%&9d!i!4V-Dg<9hnzN6q1Qd^1)dH04bw3l#F%V&iwXuxfhpSou32|Eu>(+#eo;u~Ixv`nb zsbcqzOTWD}=BtyW;22fDuwtmd=6HNuA@}!6Z~qG*8HOBI*DYtssyKT)nBx8f%iozm z>Qel=#kLb5fqH2`6Cca_K32%96mR6Adw%6+&c*iQ&h*CsQE#JluSM{M-7$6y+3e2j zX81DS;CB8;b>CVV%3btB4YN9o38oYrLTvAjSGlMOAKfvVz-fXO!^WvDOdeaViB@9H zFUwUueWchv^jjfM#^R&iPqvwJ4&+?WoR6n;7@Js`#8mK%A#NX+nq9-vW8w_F*{_n>I&8RuJlF0ngXEALX)k^NnvtyF%Y`cE$adSd9s1CYU);RVci)FaH$v)a!h z$KI^g9wKlz50p9E)fp9$`Goe?uWp*KY9YJEMYYv%0gDngt40##*2Tb$%o+^?vAmof z9Uxy1mNQS;(j&$?(`TG%N@D=_Bmp@Vf{uK3ikY$t>wU+t9HW;{LSZOoOUMLfqB6`$ zXKwe)NiSe^Ln!+1%}2oVJM50&#b)$4)YrYwUAqT^qK&o9dd(U@vMwu~MBwzm2yn)o zC%$=)$V*qT)Poe{tm9{WgGCgsK1c*$;Pi+2Lv5$h=EnhB)@i2Y0pjv6V8^FZ#{1#d zrj@11!}`vMbd4r?uwW;whMDfTpEGBER}UZT`;4s(;tp(^-Lnf{U7Fb-JfQ*Vb<8pD z=+mn{Y?xMdC2DrMRcBzg`Ka`~#Jgny@pGdWKCHXLr&s^TAP`z3abA%%B!GkQElxBhgMeDD4VKn9fx8ni-X`VCe7Nwd+ovGtZOA zkdw5{wUyq-d78-(7OR?3)qnxkh*nAxN(GviF&2LT)DORMFFauJ7XdqTTAT;ATFPXz z5-p9Y&`@zrd~1LI82{Bl7ywAqpL0xmH?3I<;eg%-6p`0Mt$Q=|Fy&VYo$*#8c!I5t zYbFTuOSlK!^H)kqtRc}c#N3x=+3bEjttV+>_1Rdl^OdzNluTKn5PU^E7J#D6B8E$l z3%3g88&^g7m%?UT%piWdgZSQTg(3H?Pg)Yjs9Mm;n_Jn4#-Ah)_I%_;HTC>=Oy~4R zTm*eZ+KG%H?ner=^7SUd4@%j>o9woKl*nG)vE*to1%%D~h6}F=v!nQ&m{salNv$-P z^+;J|K8{8F`zBmVHW^gwh$=@F%UWNSd@L`KlMhRfKbxm=YCoL3xnb1FBS{R?DJ1X? zRw+$rnGaKRF7x@$;vg~be9DJoyYh%!&O~BmlP^Z# zz)tNkP=nE!(iESQ3K(E&D8tnmxw!`%w_5NMM3nPg&+-=vu;V_5dAKEdvKa+c@;CE% z{h5^;$D8Wrp>7X2c=d(2w^P|)OvYW)hu**nnbnmzGEV5}5C%*auo5*czOo#?Eb0MJ zzz#f}^^k=3LzwW0tfxua(FsLbP@_<}mW*~r%*@!?gc3QC3Wp_m1{XfvBy;)VaDisx z*P`?nd}WfxAQ|a1hWrmoEjClvbUeg_!B7uFNVGZ;iVeF~LY?vg?RcwxtUi zCjTO$-3-8|GXK1;T&Da;Q5Z&Wya$&PwR1+>ffr^Of~ND7sV|Gk0POY?Z&&r)+RZ{A zHsY%dTNy>Lg4J`I03E9QjCG)C0?q48gqyg`8XQ{_IQ1on4@T+a8Qv6*x1Gi`{2Gs- zXz6*e^R;3wDzY48D*#?GQ}ylf`#SSq)=B_W+e_4P?cwuhaUYwrYCCurc)A>Y2qfBOs0(Zkt3q0#npV;2{Z0}xXv!O< zLp4`Rtd=gz(~C3x%zhY*6=|nki&O9i5`2$9cTO(Z(zK2b@zv8@UOsJvtoz*ZGxNxM zWV6~S)1EK#82NTgP97)%Ggv#CF~Cnq@7pRYcM2TQ*GSSb8<7h;KlMzt0e1qONq7&| zUi-;sLwIs*myY9DsXP=MN4fKJF(x~oZEkL_B|~z*n*3(vP6z-L-Ey0UCyn7BzStGR zG&X+5h*EoS%iaMycX%P&QBmFT1d>2*CsBr2%{}&m9GvrPlHyj1h$U;BbFsh2rtl^L z`v`N=&)@fNGB0gOC!kuf5IVVhs#iV)aup+@ptHeca4ntOiv+@Q#YE?_yoijTBd#yh zYG3*V{=;D51NOOd^;dsFJh=)zN%7`iUnwYLdH8+LSW6Leix+;=DF94zVzl8?oH#(( zr}l3Ki&D-f;D)zyDJw6Z!oB#o^aQn?69Uw0@&}nnFNV~f0mKwrMp3H_ijd2*qAS76 z&i-${5?=TTck$fuDm&#Lg9rfhn=+-r0TF=p6NYty&~Pctv-?fkt^=)P?#y{~hMJ@tBSAR1 zkhIbTkOW}7+LRuU`Veyax0EH;(ES6f1N#&qq@*-4oZ}>y!9~`5Hdp6lbhq41{XMfS zz`8H~r6KtsUn5@1+_grnawGvwBn+?!9GjeBcuuM2*r7CWex{?-$iJHKKgc20!=3&u zTYMr}LxASPd%WZ0E`4+SR{lET4#uh0o-nOx&CH{5AN3a8IC%DZ`~7PjbMlGJ2-Knw1Df2)$;XV(c}aX-}3oZ#V-Qraiv z&72j1`dD=3`-Xk#^GVSV_MQ^ItYP?@P^@GI2yEQ&n(t6F)suPdev#T4 T`=%YqK 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 literal 0 HcmV?d00001 From aa694867b22772c4ffb7799431c6f7b413240f29 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sun, 17 Aug 2025 21:14:37 +0200 Subject: [PATCH 039/167] New translations aaps_ci_simple_http_server_step2.png (Romanian) --- .../CI/aaps_ci_simple_http_server_step2.png | Bin 0 -> 80508 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png diff --git a/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png b/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step2.png new file mode 100644 index 0000000000000000000000000000000000000000..c292ac667f63c2652d38674472a8444b293614b6 GIT binary patch literal 80508 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�z%takuhFs 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 ZpX4pQaUK@q#vl7116|Ww Date: Sun, 17 Aug 2025 21:14:38 +0200 Subject: [PATCH 040/167] New translations aaps_ci_simple_http_server_step3.png (Romanian) --- .../CI/aaps_ci_simple_http_server_step3.png | Bin 0 -> 118864 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png diff --git a/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png b/docs/CROWDIN/ro/images/Building-the-App/CI/aaps_ci_simple_http_server_step3.png new file mode 100644 index 0000000000000000000000000000000000000000..bd31cd0ffb3d0ea2521599a3acc49d78fbb094ca GIT binary patch literal 118864 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

-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

wpzzrLd+BrP*9>ly!KNziRc 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�r;B zSi|P6w(o1-!BDo;$+q4%a zrxg`ed8CJ3{jdtD1gPxkp%C;nh#w$x0ToMYfNOO*Kgd=ix`fa9eJ1XF3=u<;m6~D- zY*!yuY)xnhuF%8+fIRZ2mRW10(}YD5eo=|l*YpTJR+v=iqF&RP3cjPg#pwS^R%Vgq z;YudT@5bkAi~_0J+M54sjg{$hDbD})zy4bIj@C=ZVZ{_E@wpYpzvYPf08CMQk-z+t z$j46%&2e8v;OE!jAk^Gr>OF)%neIh92`GkSL{CkLhku19SLSFg0IqZEP=g`qUYloXXgy4G-C#$6s*kh@))x)jK$98<~0d z`mg_?wQqZtwVKm*=!2hFLnRgxc=f(?3CEde$8@m9UfNFX8>W z4~Jd-Y(r+OTis!;&HLCgv4h!#DZ4PtPAcOXfN@%fZ-Ca0&9;T@1m{pf&-R?N9lQ2f z3$)9ij1A+BzjtgBT5Pn9T@NzAg+WsEQb;7G*@p8x)+3)-Gs%Uy zocZM){G)n{Lx}+X6PTf)3Ix#O?Dsl?Ozkj zE@_M7N_cEF&PfaGfYN{dh>eX7AgrCU4rXjx+uE>5s5$id`dTM6-HtoV(c&ghj9%I&e zb_xL&8U+SMTSqyi{cEdGl|ahi#s{8c8P7iY5^KUKkJdA*Jr+SpE&}XG8Lr3gLAIs^ z=k|>V!`d|o6w&)SafzQ|+Au@Em2U{ST97=b+R=A4qbLDXsY=*PmaIRLrSIrldLnt$ z1y#jd&$LKq>B$9S8; z9xr%idS9xS>RP($R^5HcjnC(Mp7{Nq%>3oOnYZqedHWal=I?o)h!ZDHM4UKr;>5Q1 zZy;boM@s2o$ewPv%#UWDE{4|ytXAcPl1|^S#P+N^@4ms_{=2Nsp}egFvgu6ccI2Uh z04sn6-L|FV)qU#lfp{$%pL{bUNII^XyT>-AjdL%zSGdV&5rdcm45LcN;=-}Z?w{35gG=Q+#cyX_jcd42lx zztleUxnF9Z{o-fZ58rybedqPp+kMV{`qD4{O8d1x`yX?-@MqX&_KO_W_+I-ybb6!2 zA_rdo(O>-&?ZPXcXPerM_BMUZ=f3>M+0ORql#dxq@o3Onyp9p_8^{h0bfnKYbKz6u zjBS_?XWGjA{P)?EfQ>_E8_-~fk@@zG@3l97|F_sacnz7O-bY|+TKR+l+UI=i;i-v7OS(7y2x{{}Z^{U|rtUE#)*i&tK3=h?2Zz#-~w>&NZx z``>D}IdFYz`zD5U4&P;q$q)a<-(w{QXJG8!Ywx}P4*lHQ7}+>S>Xi$`z1`mW=HEfr z`^U7wTWmXl4!2`L)lIhezWbAJa@)$?_QFSAZ5znv?dxx}--Cu9ac0^EhircAm6zM? ztvA}we)!MXc6_s4xVX#VpNs7phlu{@hu>~5vC{DTE334dmA1w?91Hiaa%|Lf4pRLd zh6z^UF5YNw0k^qxr@hD(>7F-o?YsY&E1G{y`@GsNfB1!V@uRP@mH0eu_aa*=Z?>O( z|8KY3*M7hXMs7GdyVPF(+^4yQmespI`##1*&U)ke*`>|5+RHDT;}Gpj9C**oXW#k9 z?VG>#o0RP}c@#0>g~V%AOFT9QMT~m55F?6)<-D1*T4H; zS1blub9b^zAhTCWu90(F#MEIeF6#vy5S=80lI{Eex9@Lol`1n`zxbz7S`qA#(9p2JmXr2__P77~ z|J3fk^RxD6{^EbmTKzBM&)F5yGMSbwRnpGDI6J$qGc)@>iySz0sc}xmE(b6!oMjAi z1L4dSVmDo$&gq7p8n}E5T<>tJ2}<8OaJOCn_97>Pf4lwF|KUGtU*w>zfA!!0FXE?S z+b(+U1~dj|8C)72w+5NEK*F^#r(?JM`M>aAw$J~eUj^np!kBTti_*?r>?s@T!)3z&_fzxh}G=k^D__ABfk{r3p}=+K>wVaKsX z2p+?0>gh4yc|K8acE(%(Tl;JO{aEprsuS&*jV;ERnPhmM=kvv+Ele z-R|6F=kJRzu_|P_y>*p#$3ALD^7m=`OYrR~29y<)Xr+(0#N1ms$4T`Zu*>6&!C7*QkW(4Q#Rfy)n zDLm~~d!hZYzwn>7m%jKPl3%PlDELchlNfOB-E9Aqz0NP(_27+ z?Q*%tJ>FBfba;$umyl9C9Pk;0xO&?00fN5rkZP{X>=3YW3u804i)>x}F#`|`70jr{ zg3Ju=CI$*Pj9E?pSjCe+uLRa0?5Z9Pe8vEz!DE|*w%L}bA00-!j$FQcO7hnBlJn4UkTD_A6rTU5So`GEYsap)T zh`Yi$Htn`c@{sAQ1oXhbw!?sN_bUCJ%&fr#8PCmIyZ1KR!g*!B{W5V_O|?t^vrBtg z+@)XI<}hr|H1M{sEsUnjl>=#?MStfc0^7V=djpxmK+_X;*GQA?nA}GVA*MwivTMI# zoWbdBMwfoVHMjqJ`>o&j`|V%;H~*vd;;VlWU$(t;xcT$sm4MA6^~aNn(xAJz%%SVA z|KIJO{jdK`TfOrd^2!q;XjFq!25Hwa>V0PY@9!|U$LMns`dbdCUqG*0 z#xUb{NcGT*XJ~(9D_2;DNV%~lk-ruDEE^>HrFTUwQ05*W&VFrV zCVFqqsM8O5;kIjTvsniB`!_HQz4|5O787WTSBS|$t;kXh^}1TQ=u;!HKK5-qpnL94 zQVGysFQ174|I>f;FFg`r!>Hzw;?5(@OW@R%fCGkDZD&$$H|XCnoJ;TdUk>4}bU!YR z9^EIMQXFWu=)gRmf+HB|$Un}n9fX4(21=yKaT;_ID4u*TIwE50$u341JE;YXAPXBP zk6FV>GiM2(%lmFIn7bLn3%C|hM(Ok$9kj|N+USUM&dJ#31{P9P=S!vL@OujC&F(AKt52FFwJv2Dl(A>AX!nP^-WCtUk2DnwiJa=XTWzaTr3nkC%H$A`>+L@ICA~XAvD#Gqe@S)B@BN))!G!o@W`AH`s;G+z%V7ORBBhF+6 z#!S4#pHLtr{ci*up}L34QQ%2=E&7gBd{3EVSSO-T3S&fob*FS9^Em@)@!W^o604cE z?=m~gw!>WK2#;Spf)3aMsy6a(sb)Km+e4D^8c_bFSTdkG^QB zt!ZR{89no&s~+}M8b!R7N=97-?mpYfwpcm1Kp(NGOh?w!jl_st%m)$lbIZ^m_in?a zTRYs0!ipoe5w8Nj&A`2G1H+uR^H%gpC*eFq`VNx==^sdP#aq5G;BB!gcx7d&F&~g- zec!0{#a57Uypx-&g5lm!RQ3v}|r)#rSdEV=+SS{Y-u#YcwKg zC|8_}BpAe&Q_$%opI4i&PG46lx^hDsx&D}g=(dm(W(ZFW;nn6@K^!mTnvfb(C>v!M z_!ps5-z5$Rzsls^ne%7b%0=RU3+(~fK;jZOxKPBWvTzp39d7 zJWw7v2jeTh^sl!MUtu-I%103Pt_~rd#)gW{_u%L>7Cf^;UU^lI8b&5x!cY(RIH=DErVMiuL4xR(m=Wi zJsTvnsp5$erh+8dvTRm{$2KT&m1P89R;^mb6T-8jXs2wzOo*3KDP$so?S`pCJUIN4|c!y{O}xhMGow zbyVZk9398}d7KikB;}KlW3}5^4v>BCoehq3VIbzJD6Z^Ype-mT7cmO&4t%uZUVh~F zE*6Kh0GT&jgtTSwvy<&T`1L+yl2ot3QMyNZr3Hj!`ke``A)@}YVQ0ZLfbVW`O*CG% zk0lLoIC*>*Lq_NEWv&_5c<-QzrX3e!o!!is@eDB!S~Zwq&$gOjYfZ5-gS+%O5<$3e zlQ_=}PUC2R!L}zqJQrq6hf8+AT6r{)L~E z=Uc3JaFv67g|}60(l*m?D9ddRvZr#Gc34KhY9yX(WNVPF9d2lm4vpj4uEDAdHa-&K zL>C4T4(V8-P1h;}a6#JweI>mmD<9ap0_|S6?6wid@UbWGy@3&Dkv#5d42`bFRyeFX zKlo?A(XM>bEj-+6^po$jcdx$Le(Kgrwo0mtZDXi$(hidce{N^vpUsIpJH_P+K(Di1 z2fw%a-D6dZ&Q;GbK1jp^-6%Z8VctkXeUErGVMsb%_oFnF0rtC#JkxWM@4{jM8}1i$ zArr0EbqqGQZro(c=r`IcpTXF{wx8`KS9Kv&Pzuxw1_V`JeD-f&=kEC_fnfyk{A6gJ zlX(d|FD0PhUdG6gD<}75st-8yj{Vx+L8pmbr*%7B1`j$cmp`9m_>}>6v;^i;SFT2md`63FR zDhMdQJIPJmJU8?x1k)vRX*CK))Ll z9N5Rf5pf+GdB~zhKb^~1Kh9a2}!B=!ypTd{ianu;ZBs7m=M9V&RlCe9s@ zh*B&nSZc2-eujreXec8N>7k&SFIR@R1;zCgOTZ>B;Kl(1C{XldaTQn)2_n_r_B*K0#05@;ee6Gff955y%jyUB@xTAWi=5lS7N`3Ra9m}_ zDu@N-WDLymjz;J38GMJrZ=L2US{WQ(t=7@ABjLC-|-97-XB+ofI$+bH0U>c*V{vWMQ(a?_k5N>dKGx8 z-VPDV}~tqbw&q1lts?sBFr+H=`2>VcbKcyAtm3ul`n=Do-sCwl{!dW zQFs)=FyDspgZ|vZoX>24oPPH<+mf!m@tt;gnU&7xIq2T4eUzcas2d)WXZg;5pQjR- z8#l$6}NvwyC5e!y|i7Idp4jSlSyYUwv2- z8TzlnVxoG8q$4xL_fC5J`Cyi=fCU&kx<>X+vQYp}I%MVry!pJwQUj8XYlxP?pBH%2{7QE80V~GiAEWbcdb>=!|~0THl4FVbse8zDt;=MF;C#3 z;SN;`e>r2iqCkbNl)4}pv@&8QtzzH-d-%*5u=BX2LXt)CHyfIOgI|Hr+4o%sXcd*dCHL&^%RIGy4W?#W#I6mq2^kL$LI) z`WR3rzKKa!cb$g*-OHwbcT5_LNIvD?<4E_Uj=*Xi_?>ezCIi+frjz#uHz;7#exEbv zOzjfe4=;WA6Yb5bKV#t#w^y<9DYvq~K+aTqwvlaRfz=(0%t|{D$pP8>%OmX~TzY6J z$s2ni^f}DAEyi}s_7KZ|;^fPHGTU~RR;$0T%mgQjs|TIY77tU$v54TuAS^KKug|ip z#20jkZyU9w#6)RsV`S@Zunj5OmoMNx7Y(-;lm#)q*1Fk^vpzm?oP9|so@Qe>9 znQU6F4%3)wmPlZai(!ZG9k*t(igUC1!$j2?wzsSea_6YG;n~;ZOemiATb?JC zzDFYuDLYAkHyI+QuDYS1OWg3}3=-onXz^gBoAYBl5P?w+F(m>W8tqsp9TP%SPmhw6Cbx68 zonOD)t}XtAGX~z|Ou0|7beDJjW_Je~h9!sJ>h|A$A)h z2cAiEU&Py8I=AjIfvQmZ)P#@xC;cp)5uJ!j@N1T$BOJjF^xJV)nT^7NxQi$Klh8nC z!KIJ#m6u!BuhA*5G8o`&5DpWo4zQ=`v*%&#H-CRRC4f@KA+qk@zt`Sm<-%rLr#h`s zjTPB5izcWthbp6k%!uz4U3^JII9ozy zzrbrdQeE`FG?byC-~>|fqk#fvI{ryRg`2LfOfUVb=-I(=5%tza?j9N8a{df2qQDuW zwzUk@ zkt+HQ0@$Xtn|jk=B^ZV{dB-4m*M3Hx=U>{7h7x9HV``vLBmN*|tp564IPp-vO zw#sA05ko)1K*X8xv@1gQI?~z0fmH)iQLRr*;pTx(aoa|qI*IsWIzG)w!SYfrFueLS zDP8xA$K->6F@X7JYXApb-{S_1RSxl9_MlbLSaK!d{*{a3ox77!0#>Q4Fu0PN98kN+ zfwOGI*uI@1F>;ZX4$o^G&^#gk4-y%_5noK&S|OB6)Jfz}O?ctBC|M?pZvbd(v^!y{ zv*`FVM98m%;3ev`x3FG%0b`)%(IV5ZghWvAh=FHR)*X*eQ_tC18bZiuuEZwqZn5#^vD6D^iEOjQ zWS4W}&TO!4#KVS%RU*MPWWgjN&NRSVH^$+iF~!om|G7IsC4d3%>}T62KL1DCx4-^3Ib@AnOgOt`g@Xqd7{GNIYK^Nf z?O~O1E@Uhk)y?U$L@K59L7bDB+e!RHpKw}~*m#XGs0iYT!lhm+y=%-kkK0&5 z7hO@(auDQ@2<;=VtY!`^5dU_9r({f_ktiu&1>a3hD9RzRc1wu z8=mEql@kmI@Hh4nMgZ4Woxl9KcJ|`$wD11j-{&@j^X>eH{vd-%5C^W5WEmB6@8<-_d_t~&ifd+8%zYCnDF+Z^`HVB0g9 zs76<>dDe^7>Uk1-+7W%gMw}|how?payW z!kCy&k_uI`kzJXTcY^sMQI)jCx zWxG*X`2cQlqD9U|qUxpsHOrM+*Bja_hzdI#VjMENTdgz>;_fqhhD6yLKqfSeJRQp_ z`tQTz7m*>K`|7{d)-QdD7?>2e2g68?L=p5S^95CQXNB75>t zp?fd`pn5rR&s;u{3kUn%J%lGZ*hzlYK*)XtlQ4&EUU~K7?Z-d)db@l7ep}~+z^XUv zlYt%e5u>{+G#u!~7(tE2P-o3C(^;bk-opr^tlJh{MKo{^1DJIT@Spn9*V^y?qyMA* zli&Pb+WGVAxsKR@Sq$vrpxus2e1z|0zG{rj%s!;Q@uREl3|CZt>JR-X>^B_Ht&u!T zKjP_=nT8L!~>z&tPxkTb)lG-^kWjdT|7Jqb-e zwr%$sO1k{-9UQo}S+(J9FIyNkc9$==FHkRMKJ;Z0;dUm?L%kd%Avypr$SSYK&Vj3B zktqheID^FY%6FGH)}y+DT}@Vec*wCIxCOU|N(X0-xUNSt)iPI58`nd`@7=rJZoT>4 zcAjm3E9X9iQRX5zIG~jTcEIWOqPctiN?^7|_Wb2@o+C;i``sQ=5-K?#binbDB%a$~ z6@EL6a+8VRLc8m_&q1ntLpT^>%jnL9_YZed_=m$j z45HFY7WRRbLFH&^p@)~o+HPi1D5ofztfgBK1Lfl zN3LAQlA+kC$7k;o8~Ha%DI2O@qi51`gBB1e*LYch6M`%nconSe@z)ar;~OBjS6U(LAW{ zxGsnC43To65APk19shneH-=Cm7IS6{51PxZg4?(6v>P{XwzF$zSjy*V(3av*H&~u` z*IsNFKmVuNS3mzJ+E*8E66V2c0TOVALlk$un-ThKz4r0kglYEqPl&Wz`G78Fe(@{D z+^(|1ee$)3`~za1M}Mp(05fnpd}}YZ)ffL*`{J*EwS6&aMNeelg$K>1jA!Y4G@s)c z`@>)kgCF}p%6rnILC$KEDoYF$dvkv%`a_i~@z|K;bMQ^t73H}F&wFM9hrrb^)>L{~ z?zB7aU*iP*Tb#s?0TqRB1?ADR6sAs`1HzP}$|YXU(~P#aki-q;XZB`KZw_!L^I?Ay zRf9INxOA?qU4FH__r{Og`p#X>AoUiM7jZ{bOHiU-`rzXnU+*Q__lohAm)T(QdgN+6+%gwtjBOv;lavFtTv*C!&HWi*QjY+p1ads0`pdXy6bN?^$LK;;RZZ* z75iNdGu!XU_vtWzn6aKK1f!Dh5y~vq5ZaCj?CltK@1o8TPqATw@W zztQgAzRj!}gIi!0HFS(1CsBr%YNu07(>HO>qHjNjllpy{X}9RBex1);LB_foVfieF z`<}VP00D)4s3?sTz6zJN5>`yy|P(7JFHJim0COu05E+uwGULTP<)3Ed^v%aM} zOxCCDIeiQ0ss4GCvil(UKTdl4)A8G3lXX({(i_4QvTAQOv)Vp%vlv+n`adlGthnOr zPCT79pX22s9=Ut<=R_gw9;0WH-D-Dk zU2U6pS<$h9JOY(wj-w79d$L&qOyr5Na-UHrhv>NiWDrh=<#0sZGkH};bq;wZ1Uy2b zRixB}m4Ol5+YnfV%~_-H+&X7EoqwV2T)oORN9spl{&!=Cd(NZmQeveKwX)cb%7@B!Z=d6WTSNHj4X zfJ~#}VJ^4Qi~?=4mIY5|iMQZsV-K4f2Eh6n#hSl91G8g31)?L}Zny8;ZkwDp zw6u0aEvuyiZd6{!OxEW@5M^gx?Px2)PDOGzR^<2%Lr>O+yhK|!zTMwo6 zaZAagG;Tz|V3|FXyxdncBXp2;Ph=H{5^ayGZaC_m>$4F!l{-8Gn8(+o^ z3T|h*B`kvmJLvt6K;WXl8f26QI_QiM=5h1Hj6^+PH8b|puwKS}`_nW;9of##GVBA` zap=R|XY-`RF*)7*=b}@3C<8pKARiFkYwrOd4-6W|FFN&+6HARTa)&8jLk==^hneQJ z`-q{O7&lmw!4v=Qa|z>z2=(G36SX- zA6yyfP69?ThO$&%#h2Ekv6OFysXR4uyw$$`t$*0go~bh&lq;n?2CPaO(lt~>{A4dC zN+kj**Agm+23Kz?pZi>3YLJ*59{|_~KmUBB5>U-9$Fghd2L*q5dA*&x_(Hq-77OyZ zrf7AY`%I8pw^MI#P0>`g~utR9mtZS`WuY()CcCQoh9JB5NSpA99x~JWZ zQXA7Z@~&3{hf<#uKAGTu?{6pGfwYh6ZkGdcnJ~uaXoW43cffRQ^b4=2PXj#xe)C~F$pqSk| z#o~GZ_NX2YqE|7ih%N+fHo3aA$r&AQ zx7U93`(Rma7cYGX{SXn0;^iK~2zE)1B4)a}+4)t%8{(}lfj9&#DDq=>GVM~P{!icy zS{_uQ2U9c;k4E2N={&SJ4ia%neGV&ulbW5P*ZPser>d)(#E_RfX4K%stGA8)t)m0< zGU;%%TD^KOuexd4^_4`I0=~2riYpz4ST8>?uq&vhv&IV76=T{;>Vs-}vk897c|F9^nD`-3Ulh*d!?l z