À propos du projet
AgentWeb est une bibliothèque basée sur le WebView Android, conçue pour simplifier son utilisation en offrant des fonctionnalités puissantes et flexibles. Elle résout les problèmes courants du développement WebView Android, tels que les barres de progression, les pages d'erreur, la sélection de fichiers, et prend en charge des middlewares personnalisés.
## Caractéristiques principales
- **Facilité d'utilisation** : Intégration rapide via l'appel chaîné `AgentWeb.with()`.
- **Riche en fonctionnalités** : Barres de progression intégrées, pages d'erreur, sélecteur de fichiers (optionnel), téléchargeur, etc.
- **Flexibilité** : Prise en charge des middlewares (MiddlewareWebClientBase / MiddlewareWebChromeBase) pour superposer une logique personnalisée.
- **Légèreté** : Noyau de petite taille, avec des modules optionnels introduits selon les besoins.
## Démarrage rapide
1. Ajoutez le dépôt JitPack (pour Gradle 7+, configurez dans `settings.gradle`).
2. Ajoutez les dépendances :
```groovy
implementation 'com.github.Justson.AgentWeb:agentweb-core:5.1.7-androidx' // Obligatoire
implementation 'com.github.Justson.AgentWeb:agentweb-filechooser:5.1.7-androidx' // Optionnel
implementation 'com.github.Justson:Downloader:v5.0.6-androidx' // Optionnel
```
3. Initialisez dans l'Activity/Fragment :
```java
AgentWeb.with(this)
.setAgentWebParent(container, new LinearLayout.LayoutParams(...))
.useDefaultIndicator()
.createAgentWeb()
.ready()
.go("https://example.com");
```
## Points d'attention
- N'appelez pas directement `setWebViewClient()` / `setWebChromeClient()` sur le WebView ; utilisez les méthodes ou middlewares fournis par AgentWeb.
- `setOpenOtherPageWays(ASK)` n'affiche une fenêtre que si l'application cible est installée.
- Le traitement des schémas non-http/https peut déclencher une détection de confidentialité ; définissez `DISALLOW` pour l'éviter.
- Un thème AppCompat est requis pour prendre en charge `AlertDialog`.
- Depuis v5.1.2, compileSdk/targetSdk est passé à 36 ; mettez à jour l'AGP en conséquence.
- Depuis v5.1.3, les règles de conservation `@JavascriptInterface` sont intégrées, aucune déclaration supplémentaire n'est nécessaire.
## Projets associés
- [flying-pigeon](https://github.com/Justson/flying-pigeon) : Composant IPC inter-processus.
- [AgentWebX5](https://github.com/Justson/AgentWebX5) : Adaptation du moteur Tencent X5.
- [CoolIndicator](https://github.com/Justson/CoolIndicator) : Barre de progression WebView.
- [Downloader](https://github.com/Justson/Downloader) : Téléchargeur de fichiers léger.
## Documentation et support
- [Wiki](https://github.com/Justson/AgentWeb/wiki) (incomplet)
- Exemple Sample (recommandé)
- [Journal des modifications](./releasenote.md)
- Retour de problèmes : [Issues](https://github.com/Justson/AgentWeb/issues)
- Groupe QQ : 599471474
## Licence
Apache License 2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.