'La page Web n'est pas disponible' avec WebView.loadData () SEULEMENT dans l'émulateur

loadData sur mon WebView et je l'ai transmis un peu de HTML sous la forme d'une String comme ça:

 webView.loadData( htmlString, "text/html", "utf-8" ); 

Cela fonctionne bien sur mon Galaxy Tab 10.1, mais le WebView affiche:

  • Comment obtenir un rappel de finition sur setImageUrl avec la bibliothèque Volley et NetworkImageView?
  • Envoyer AT Commands to Android Phone
  • Je souhaite modifier la taille de l'icône de la barre d'action
  • Le libellé de la liste Html ne fonctionne pas dans la vue de texte Android. Que puis-je faire?
  • Android ConstraintLayout génère des valeurs absolues
  • RxJava2 dans le rappel de OnLoadFinished de CursorLoader
  • Webpage not available

    Lors de l'exécution sur l'émulateur avec tout configuré pour correspondre à mon onglet Galaxy. Définir android.permission.INTERNET dans le manifeste n'a aucun effet, même si je ne devrais pas avoir cette permission puisque je rends le HTML en mémoire, et je n'hésite pas à accéder à la connexion de données.

    Que se passe-t-il?

    3 Solutions collect form web for “'La page Web n'est pas disponible' avec WebView.loadData () SEULEMENT dans l'émulateur”

    Essayez avec ce code

     webView.loadData( URLEncoder.encode(htmlString).replaceAll("\\+"," "), "text/html", "utf-8" ); 

    au lieu de

     webView.loadData( htmlString, "text/html", "utf-8" ); 

    Il devrait fonctionner, car parfois le caractère '%', '\', '#' crée un problème s'il n'est pas correctement encodé

    Dans les plates-formes 2.x , loadData() échoue dans certains cas (il faut que le html soit échappé), utilisez loadDataWithBaseURL() et passe null pour baseUrl et historyUrl :

     webView.loadDataWithBaseURL(null, htmlString, "text/html", "utf-8", null); 

    En fait, merci pour @Viraj pour la réponse.

    Google a déjà annulé ce qui précède et vous devriez l'utiliser à la place:

     webView.loadData(URLEncoder.encode(mAdvertisement.getContent(), "UTF-8").replaceAll("\\+", " "), "text/html", "UTF-8"); 
    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.