Outil d'automatisation JavaScript prenant en charge les services d'accessibilité sur la plateforme Android
)
* `Amélioration` L'éditeur de code prend en charge la détermination intelligente de l'emplacement d'insertion lors de l'importation de classes Java et de noms de paquets
* `Amélioration` Le module images prend en charge l'utilisation des chemins directement comme paramètres d'image
* `Amélioration` importPackage prend en charge les paramètres de chaîne
* `Amélioration` L'adresse IP du mode serveur prend en charge l'importation du presse-papiers avec reconnaissance intelligente et conversion intelligente avec la touche espace
* `Amélioration` Le gestionnaire de fichiers prend en charge la sélection de préfixes par défaut lors de la création de nouveaux fichiers et génère automatiquement un suffixe numérique approprié
* `Amélioration` Le gestionnaire de fichiers informe spécifiquement sur le message d'exception lors de l'exécution du projet _[`issue #268`](http://issues.autojs6.com/268)_
* `Amélioration` Le gestionnaire de fichiers prend en charge plus de types et affiche les symboles d'icône correspondants (prend en charge plus de 800 types de fichiers)
* `Amélioration` Les types de fichiers éditables (jpg/doc/pdf, etc.) dans le gestionnaire de fichiers ont ajouté des boutons d'édition
* `Amélioration` Les fichiers APK dans le gestionnaire de fichiers prennent en charge la visualisation des informations de base, des informations du manifest et de la liste des permissions
* `Amélioration` Les fichiers multimédias audio/vidéo dans le gestionnaire de fichiers prennent en charge la visualisation des informations de base et des informations de MediaInfo
* `Amélioration` Le paquet de fichier unique prend en charge le remplissage automatique du nom de paquet standardisé approprié et l'indication de filtre de caractère invalide
* `Amélioration` Le paquet de fichier unique prend en charge la configuration automatique de l'icône et l'incrémentation automatique du numéro et du nom de version basé sur l'application du même nom de paquet installée
* `Amélioration` Le fichier de configuration du paquet prend en charge l'option abis/libs pour spécifier la bibliothèque et l'architecture ABI incluses par défaut
* `Amélioration` Prend en charge les indications de messages pertinents lorsque les options abis/libs du fichier de configuration du paquet sont invalides ou non disponibles
* `Amélioration` LeakCanary est exclu de la version officielle pour éviter une croissance inutile
* `Amélioration` Tous les commentaires en anglais dans le code source du projet sont accompagnés de traductions en chinois simplifié pour améliorer la lisibilité
* `Amélioration` README et CHANGELOG prennent en charge plusieurs langues (Généré automatiquement par script)
* `Amélioration` Améliorer l'adaptabilité de la version du script de construction Gradle
* `Amélioration` Certaines dépendances ou versions de bibliothèques locales ont été ajustées _[`CHANGELOG.md`](http://project.autojs6.com/blob/master/app/src/main/assets-app/doc/CHANGELOG.md#v660)_
##### Pour plus d'histoires de versions, voir
* [CHANGELOG.md](http://project.autojs6.com/blob/master/app/src/main/assets-app/doc/CHANGELOG-fr.md)
******
### Compilation et construction du projet
******
Pour déboguer ou développer le projet open source AutoJs6, vous pouvez utiliser [Android Studio](https://pro.autojs.org/) (un produit de [Google](https://www.google.com/)) ou [IntelliJ IDEA](https://www.jetbrains.com/idea/) (un produit de [Jetbrains](https://www.jetbrains.com/)).
Cette section présente la méthode de compilation et de construction du projet open source AutoJs6 en prenant Android Studio comme exemple, similaire à IntelliJ IDEA.
#### Préparation de Android Studio
Téléchargez la version `Android Studio Meerkat | 2024.3.1 Patch 1` (choisissez-en une selon vos besoins):
- [android-studio-2024.3.1.14-windows.exe](https://redirector.gvt1.com/edgedl/android/studio/install/2024.3.1.14/android-studio-2024.3.1.14-windows.exe) (1.22 GB)
- [android-studio-2024.3.1.14-windows.zip](https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2024.3.1.14/android-studio-2024.3.1.14-windows.zip) (1.23 GB)
> Note : La version mentionnée ci-dessus a été publiée le 24 March 2025. Pour télécharger d'autres versions ou si le lien ci-dessus n'est plus valide, visitez la page [archive des versions de Android Studio](https://developer.android.com/studio/archive?hl=en).
Installez ou extrayez le fichier ci-dessus, exécutez Android Studio (par exemple `"D:\android-studio\bin\studio64.exe"`).
#### Préparation du SDK Android
> Note : Si le SDK Android (Kit de développement logiciel) est déjà installé sur le système de votre ordinateur, vous pouvez ignorer cette section.
Dans Android Studio, ouvrez la page des paramètres avec le raccourci `CTRL + ALT + S`:
```text
Apparence et comportement (Appearance & Behavior) ->
Paramètres système (System Settings) ->
Android SDK (Kit de développement logiciel Android)
```
Si le champ `Android SDK Location (emplacement du SDK Android)` est vide, cliquez sur le bouton `Edit (modifier)` à droite, cliquez plusieurs fois sur `Next (suivant)` dans la fenêtre contextuelle.
> Note : Vous devrez peut-être accepter un ou plusieurs accords pertinents pour continuer.
Une fois les ressources téléchargées et installées, cliquez sur le bouton `Finish (terminer)`.
Le champ `Android SDK Location (emplacement du SDK Android)` ci-dessus sera automatiquement rempli, complétant ainsi la préparation du SDK.
#### Préparation des outils SDK Android
AutoJs6 nécessite certains outils SDK (comme NDK et CMake).
> Note : Si tous les outils SDK Android requis par AutoJs6 sont déjà installés sur le système de votre ordinateur, vous pouvez ignorer cette section.
Dans Android Studio, ouvrez la page des paramètres avec le raccourci `CTRL + ALT + S`:
```text
Apparence et comportement (Appearance & Behavior) ->
Paramètres système (System Settings) ->
Android SDK (Kit de développement logiciel Android) ->
Outils SDK (SDK Tools) (situés dans la fenêtre de droite)
```
Cochez `Show Package Details (afficher les détails du package)`, puis cliquez respectivement sur NDK et CMake, assurez-vous que les versions appropriées des outils sont cochées, Les informations de version des outils SDK se trouvent dans le fichier `version.properties` à la racine du projet AutoJs6.
#### Préparation du JDK
La version de JDK (Kit de développement Java) requise pour le projet AutoJs6 doit être au moins `17`, mais il est recommandé d'avoir au moins `19`.
À partir du 2 May 2025, AutoJs6 prend en charge la version maximale de JDK `24`.
> Note : Si le JDK est déjà installé sur le système informatique et que la version répond aux exigences ci-dessus, vous pouvez ignorer cette section.
Vous pouvez télécharger le JDK directement via l'IDE, ou visiter [le site Web d'Oracle](https://www.oracle.com/java/technologies/downloads/) pour le télécharger.
Ouvrez la page des paramètres dans Android Studio en utilisant le raccourci `CTRL + ALT + S`:
```text
Construction, exécution, déploiement (Build, Execution, Deployment) ->
Outils de construction (Build Tools) ->
Gradle
```
Vous pouvez sélectionner ou ajouter différentes versions de JDK à la section `Gradle JDK`.
Si une version appropriée de JDK (>= `17`) existe déjà dans la liste, sélectionnez-la directement.
Sinon, vous pouvez choisir `Télécharger JDK (Download JDK)` pour télécharger un JDK approprié, cliquez sur le bouton `Télécharger (Download)` et attendez que le téléchargement soit terminé.
Vous pouvez également choisir `Ajouter JDK (Add JDK)` pour ajouter un JDK local existant, localiser son répertoire et ajouter le JDK.
#### Clonage des ressources AutoJs6
Cliquez sur le bouton `Get from VCS (obtenir depuis VCS)` sur la page principale d'Android Studio.
Remplissez le champ `URL (adresse de ressources unifiée)` avec `https://github.com/SuperMonster003/AutoJs6.git`,
Le champ `Directory (répertoire)` peut être modifié selon vos besoins.
Cliquez sur le bouton `Clone (cloner)`, attendez que les ressources AutoJs6 soient clonées localement sur l'appareil.
> Note : Ce processus peut nécessiter l'installation de [Git (système de gestion de versions distribué)](https://git-scm.com/download).
#### Construction du projet AutoJs6
Une fois cloné, Android Studio ouvrira la fenêtre de projet AutoJs6 et complétera automatiquement le téléchargement initial des `dépendances` et le processus de construction Gradle.
> Note : Ce processus peut être très long. En cas de mauvaises conditions réseau, plusieurs tentatives peuvent être nécessaires (cliquez sur le bouton Retry).
Si la construction ne peut pas se faire automatiquement ou si vous devez reconstruire le projet, suivez ces étapes :
- Dans le menu `Run/Debug Configurations` de la barre d'outils, sélectionnez `app`, qui est l'application principale d'AutoJs6
- Cliquez sur le bouton `Build Project` (icône de marteau) à gauche pour lancer la construction du projet. Le raccourci par défaut est CTRL + F9
- Attendez que la construction se termine. L'onglet `Builder Output` affichera un message comme "BUILD SUCCESSFUL in 1h 17m 34s"
Si la construction échoue, vous pouvez signaler le message d'erreur sur la page [Issues](http://issues.autojs6.com) du projet AutoJs6.
> Note : Pour plus de détails sur la manière de construire et d'exécuter l'application, veuillez consulter [Android Docs](https://developer.android.com/studio/run?hl=en)
#### Déploiement du Projet AutoJs6 (Exécuter l'App)
Une fois le projet construit avec succès, il peut être déployé en tant qu'application (App) sur un appareil physique (par ex. téléphone/tablette) ou sur un appareil virtuel (par ex. émulateur Android).
- Dans la barre d'outils, sélectionnez `app` dans le menu `Run/Debug Configurations`, qui est l'application principale d'AutoJs6
- Dans le menu déroulant `Available Devices` à droite, choisissez l'appareil sur lequel l'application du projet doit s'exécuter (physique ou virtuel)
- Cliquez sur le bouton `Run` (icône de triangle) à droite pour lancer l'application. Le raccourci par défaut est `F10`
- Attendez que le déploiement se termine ; l'appareil sélectionné installera et exécutera automatiquement l'application du projet
#### Déploiement du Projet AutoJs6 (Générer l'APK)
Emballer le projet et générer un fichier APK qui peut être installé sur les appareils Android:
- Version de débogage (Debug Version)
- `Construire (Build)` -> `Build Bundle(s) / APK(s)` -> `Build APK(s)`
- Générer un package d'installation de version de débogage signé par défaut
- Exemple de chemin : `"D:\AutoJs6\app\build\outputs\apk\debug\"`
- Version publiée (Release Version)
- `Construire (Build)` -> `Generate Signed Bundle / APK`
- Sélectionnez l'option `APK`
- Préparer le fichier de signature (nouveau ou existant), et générer un package d'installation de version publiée signée
- Exemple de chemin : `"D:\AutoJs6\app\release\"`
> Note : Pour plus d'informations sur la manière de construire une application pour sa publication, veuillez consulter [Android Docs](https://developer.android.com/build/build-for-release?hl=en)
#### Tâches de build Gradle prédéfinies pour AutoJs6
En plus de construire l'application du projet, AutoJs6 prend en charge plusieurs tâches de build Gradle prédéfinies qui aident les développeurs à effectuer directement des opérations liées au projet.
Dans le menu `Run/Debug Configurations` de la barre d'outils, vous pouvez voir diverses tâches Gradle prédéfinies, chacune indiquée par une icône d'éléphant à gauche.
- AutoJs6 [inrt:assemble]
Assembler la variante de build "inrt", qui sert principalement à la fonction de packaging des scripts d'AutoJs6.
Le projet AutoJs6 dispose de différentes variantes de construction. La variante "inrt" est utilisée pour le packaging des scripts, générant le fichier modèle "template.apk" nécessaire au packaging.
Lors de l'utilisation de la fonction de packaging, vous pourriez rencontrer le message d'erreur suivant :
> java.io.FileNotFoundException: template.apk
Cela indique que le fichier modèle n'existe pas. Vous devez exécuter manuellement la tâche `inrt:assemble` pour générer le fichier modèle, puis reconstruire et redéployer l'application.
> Note : Lorsque le code du projet principal est modifié et que vous souhaitez synchroniser ces changements avec l'application packagée, il est nécessaire de relancer la tâche `inrt:assemble` afin de générer les fichiers de modèle et de redéployer l'application
- AutoJs6 [app:bundle]
Emballer les produits du processus de build en mode debug, principalement pour le projet [définitions AutoJs6](http://dts-project.autojs6.com).
Après l'exécution de la tâche, le fichier JAR le plus récent du projet AutoJs6 est généré. À l'aide de l'outil [Android d.ts Generator](https://github.com/NativeScript/android-dts-generator) (par [NativeScript](https://github.com/NativeScript)), vous pouvez générer les définitions de types (format d.ts) pour l'application principale d'AutoJs6.
- AutoJs6 [app:digest]
Ajoutez des informations de résumé au fichier APK généré par le build en mode release, principalement pour déterminer le nom final du fichier avant de publier la dernière version d'AutoJs6 sur GitHub.
Voici une comparaison des noms de fichiers avant et après l'ajout des informations de résumé :
```text
Avant:
autojs6-v6.6.2-arm64-v8a.apk
Après:
autojs6-v6.6.2-arm64-v8a-0f2a9d74.apk
```
> Voir aussi: [Android Docs](https://developer.android.com/studio/run?hl=zh-cn)
******
### Assistance au développement de scripts
******
Pour développer des scripts exécutables par AutoJs6, utilisez les outils de développement appropriés:
- [VSCode](https://code.visualstudio.com/download) / [WebStorm](https://www.jetbrains.com/webstorm/download/) / [HBuilderX](https://www.dcloud.io/hbuilderx.html) ...
Pour développer et déboguer des scripts sur PC, l'extension VSCode permet une connexion entre PC et téléphone:
- [AutoJs6-VSCode-Extension](http://vscext-project.autojs6.com) - Débogueur AutoJs6 (extension de plateforme VSCode)
Lors de l'écriture de code avec des outils de développement, les fonctionnalités de complétion de code peuvent mieux aider les développeurs à terminer l'écriture du code:
- [AutoJs6-TypeScript-Declarations](http://dts-project.autojs6.com) - Fichiers de déclaration AutoJs6 (complétion de code)
Lors de l'écriture de codes, les API AutoJs6 et l'utilisation peuvent être consultées à tout moment sur les documents de l'application:
- [AutoJs6-Documentation](http://docs-project.autojs6.com) - Documentation de l'application AutoJs6
Les projets de développement de scripts existants peuvent servir de référence et inspirer la création de projets de scripts personnels:
- [Ant-Forest](https://github.com/TonyJiangWJ/Ant-Forest) - Script de collecte automatique d'énergie Ant Forest par [TonyJiangWJ](https://github.com/TonyJiangWJ)
- [Ant-Forest](https://github.com/SuperMonster003/Ant-Forest) - Script de collecte automatique d'énergie Ant Forest par [SuperMonster003](https://github.com/SuperMonster003)
- [autojs](https://github.com/e1399579/autojs) - Scripts utilitaires Auto.js par [e1399579](https://github.com/e1399579)
- [autojsDemo](https://github.com/snailuncle/autojsDemo) - Exemple de démonstration Auto.js par [snailuncle](https://github.com/snailuncle)
- [dépôts associés à autojs](https://github.com/topics/autojs) - Tous les dépôts associés au sujet autojs sur GitHub
******
### Contribution
******
Merci à chaque contributeur participant au développement du projet AutoJs6.
| Contributeurs | Nombre de commits | Soumissions récentes |
|:-------------------------------------------------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------------------------------------:|
| [luckyloogn](https://github.com/luckyloogn) | [3](https://github.com/SuperMonster003/AutoJs6/commits?author=luckyloogn) | `2025/01/01` |
| [kvii](https://github.com/kvii) | [1](https://github.com/SuperMonster003/AutoJs6/commits?author=kvii) | `2024/10/16` |
| [chenguangming](https://github.com/chenguangming) `(Tom)` | [2](https://github.com/SuperMonster003/AutoJs6/pulls?q=is%3Apr+author%3Achenguangming) | `2024/05/14` |
| [LZX284](https://github.com/LZX284) `(AI)` | [17](https://github.com/SuperMonster003/AutoJs6/commits?author=LZX284) | `2023/11/19` |
| [TonyJiangWJ](https://github.com/TonyJiangWJ) | [4](https://github.com/SuperMonster003/AutoJs6/commits?author=TonyJiangWJ) | `2023/10/31` |
| [little‑alei](https://github.com/little-alei) `(抠脚本人)` | [12](https://github.com/SuperMonster003/AutoJs6/commits?author=little-alei) | `2023/07/12` |
| [aiselp](https://github.com/aiselp) | [6](https://github.com/SuperMonster003/AutoJs6/pulls?q=is%3Apr+author%3Aaiselp) | `2023/06/14` |
| [LYS86](https://github.com/LYS86) `(Lin)` | [2](https://github.com/SuperMonster003/AutoJs6/commits?author=LYS86) | `2023/06/03` |
Données mises à jour le 1 January 2025.
Les entrées de données sont triées par `soumissions récentes` en ordre décroissant.
Les nouvelles Pull Requests en attente de traitement seront ajoutées aux statistiques après leur fusion.
Certains contributeurs ne figurant pas correctement dans [GitHub Contributors](https://github.com/SuperMonster003/AutoJs6/graphs/contributors) peuvent avoir des enregistrements de soumission vides, mais leurs contributions peuvent toujours être consultées via [Pull Requests](https://github.com/SuperMonster003/AutoJs6/pulls).
[//]: # (
# --------------------------------------------------------------#
# Before committing and pushing to the remote GitHub repository #
# --------------------------------------------------------------#
- CHANGELOG.md
- Update entries for AutoJs6 by checking all changed files
- Update entries for Gradle plugins [ implementation ]
- Update version name and released date
- Append related GitHub issues to changelog entries
- README.md
- The summary of the latest changelog for committing to Git [ DO NOT commit or push ]
- Update badges like [ android studio / rhino / ... ]
- Update android studio download links and version names
- Update contribution section
- Remove the part like [ alpha / beta / ... ] of VERSION_NAME in version.properties
- Update dependencies TypeScript declarations if needed.
- Re-generate documentation/markdown by running the python script
- Check the two-way versions for AutoJs6 and VSCode ext, then publish the ext to Microsoft
- Run Gradle task "app:assembleInrtRelease"
- Build APK to determine the final VERSION_BUILD field
- Run Gradle task "app:appendDigestToReleasedFiles"
- Check VERSION_BUILD in version.properties with released apks
- Commit and push to GitHub
- Publish the latest release with signed APKs
)