J'ai une page html locale avec plusieurs autres ressources pointées par elle (fichiers css et bibliothèques Javascript) que je voudrais charger dans une WebView. Comment cela pourrait-il être réalisé ?
Peut-être pas la meilleure façon de procéder, mais j'expérimente toujours.
android
android-webview
local
Klaus Johan
la source
la source
Réponses:
Le moyen le plus simple serait probablement de placer vos ressources Web dans le dossier des actifs, puis d'appeler:
Pour une communication complète entre Java et Webview, voir ceci
Mise à jour: le dossier des actifs est généralement le dossier suivant:
<project>/src/main/assets
Cela peut être modifié dans le paramètre de configuration du dossier d'actifs de votre<app>.iml
fichier comme:<option name=”ASSETS_FOLDER_RELATIVE_PATH” value=”/src/main/assets” />
Voir l'article Où placer le dossier des ressources dans Android Studiola source
AndroidManifest.xml
pour refléter cela. (Personnellement, je recommanderais de mettre l'URL / chemin du fichier dans des ressources de chaîne et d'y accéder à partir de là de telle sorte que le chemin soit avec toutes les autres données de chaîne du programme, mais ce n'est pas vraiment directement lié au problème de l'actif / dépendance des ressources.)probablement cet exemple pourrait aider:
la source
Dans ce cas, il
WebView#loadDataWithBaseUrl()
vaut mieux utiliserWebView#loadUrl()
!url: url / path Chaîne pointant vers le répertoire de tous vos fichiers JavaScript et liens html ont leur origine. Si nul, il s'agit de: vide. data: Chaîne contenant votre fichier hmtl, lue avec BufferedReader par exemple
Plus d'informations: WebView.loadDataWithBaseURL (java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)
la source
La réponse acceptée ne fonctionne pas pour moi, c'est ce qui fonctionne pour moi
la source