Ich habe Probleme mit der Anzeige von HTML-Zeichenfolgen in Android WebView.
Auf der Serverseite habe ich eine Webseite heruntergeladen und HTML-Zeichen und Anführungszeichen maskiert (ich habe Python verwendet):
my_string = html.escape(my_string, True)
Auf der Android-Client-Seite: Zeichenfolgen werden nicht entfernt von:
myString = StringEscapeUtils.unescapeHtml4(myString)
webview.loadData( myString, "text/html", "encoding");
In der Webansicht werden sie jedoch nur als Literalzeichenfolgen angezeigt. Hier ist das Ergebnis:
Bearbeiten: Ich füge die ursprüngliche Zeichenfolge hinzu, die von der Serverseite zurückgegeben wurde:
link rel = "Apple-Touch-Symbol" Größen = "114 x 114" href = & quot; /static/favicon/apple-touch-icon-114x114.png" & gt; & lt; link rel = & quot; Apple-Touch-Symbol & quot; Größen = "72 x 72" href = & quot; /static/favicon/apple-touch-icon-72x72.png" & gt; & lt; link rel = & quot; Apple-Touch-Symbol & quot; Größen = "144 x 144" href = & quot; /static/favicon/apple-touch-icon-144x144.png" & gt; & lt; link rel = & quot; Apple-Touch-Symbol & quot; Größen = "60 x 60" href = & quot; /static/favicon/apple-touch-icon-60x60.png" & gt; & lt; link rel = & quot; Apple-Touch-Symbol & quot; Größen = "120 x 120" href = & quot; /static/favicon/apple-touch-icon-120x120.png" & gt; & lt; link rel = & quot; Apple-Touch-Symbol & quot; Größen = "76 x 76" href = & quot; /static/favicon/apple-touch-icon-76x76.png" & gt; & lt; link rel = & quot; Apple-Touch-Symbol & quot; Größen = "152 x 152" href = & quot; /static/favicon/apple-touch-icon-152x152.png" & gt; & lt; link rel = & quot; Apple-Touch-Symbol & quot; Größen = "180 x 180" href = & quot; /static/favicon/apple-touch-icon-180x180.png" & gt; & lt; link rel = & quot; icon & quot; Typ = "Bild / PNG" href = & quot; /static/favicon/favicon-192x192.png" Größen = "192 x 192" & gt; & lt; link rel = & quot; icon & quot; Typ = "Bild / PNG" href = & quot; /static/favicon/favicon-160x160.png" Größen = "160 x 160" & gt; & lt; link rel = & quot; Symbol & quot; Typ = "Bild / PNG" href = & quot; /static/favicon/favicon-96x96.png" Größen = "96 x 96" & gt; & lt; link rel = & quot; icon & quot; Typ = "Bild / PNG" href = & quot; /static/favicon/favicon-16x16.png" Größen = "16 x 16" & gt; & lt; link rel = & quot; icon & quot; Typ = "Bild / PNG" href = & quot; /static/favicon/favicon-32x32.png" Größen = "32 x 32" & gt; & lt; meta name = & quot; msapplication-TileColor & quot; content = & quot; # da532c & quot; & gt; & lt; meta name = & quot; msapplication-TileImage & quot; content = & quot; /static/favicon/mstile-144x144.png" & gt; & lt; meta name = & quot; msapplication-config & quot; content = & quot; /static/favicon/browserconfig.xml" & gt; & lt ;! - Externes CSS - & gt; & lt; link rel = & quot; Stylesheet & quot; href = & quot;https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css& quot; & gt; & lt ;! - Externe Schriftarten - & gt; & lt; link href = & quot; // maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel = & quot; Stylesheet & quot; & gt; & lt; link href = & # x27; // fonts.googleapis.com/css?family=Open+Sans:300,600' rel = & # x27; Stylesheet & # x27; Typ = & # x27; Text / CSS & # x27; & gt; & lt; link href = & # x27; // fonts.googleapis.com/css?family=Lora:400,700' rel = & # x27; Stylesheet & # x27; Typ = & # x27; Text / CSS & # x27; & gt; & lt ;! - [wenn IE 9] & gt; & lt; script src = & quot; // cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"></script> & lt; script src = & quot; // cdnjs.cloudflare.com/ajax/libs/respond.js/1.4.2/respond.min.js"></script> & lt;! [endif] - & gt; & lt ;! - Site CSS - & gt; & lt; link rel = & quot; Stylesheet & quot; Typ = & quot; Text / CSS & quot; href = & quot; /static/css/style.css" & gt; & lt; link rel = & quot; Stylesheet & quot; Typ = & quot; Text / CSS & quot; href = & quot; /static/css/glyphicon.css" & gt; & lt; / head & gt; & lt; Körper & gt; & lt; div class = & quot; Containerartikelseite & quot; & gt; & lt; div class = "row" & gt; & lt; div class = "col-md-8 col-md-offset-2" & gt; & lt; h2 & gt; & lt; a href = & quot; quot; href = & quot; /static/css/glyphicon.css" & gt; & lt; / head & gt; & lt; Körper & gt; & lt; div class = & quot; Containerartikelseite & quot; & gt; & lt; div class = "row" & gt; & lt; div class = "col-md-8 col-md-offset-2" & gt; & lt; h2 & gt; & lt; a href = & quot; quot; href = & quot; /static/css/glyphicon.css" & gt; & lt; / head & gt; & lt; Körper & gt; & lt; div class = & quot; Containerartikelseite & quot; & gt; & lt; div class = "row" & gt; & lt; div class = "col-md-8 col-md-offset-2" & gt; & lt; h2 & gt; & lt; a href = & quot;http://www.huffingtonpost.com/2015/03/22/ted-cruz-climate-change_n_6919002.html & quot; & gt; Gov. Jerry Brown sagt, Ted Cruz sei & # 39; absolut ungeeignet & # 39; Aus Gründen des Klimawandels für ein Amt kandidieren & lt; / a & gt; & lt; / h2 & gt; & lt; h4 & gt; Sam Levine & lt; / h4 & gt; & lt; div class = "Artikel" & gt; & lt; p & gt; Der kalifornische Gouverneur Jerry Brown (D) sagte am Sonntag, dass der texanische Senator Ted Cruz (R-Texas) "absolut ungeeignet ist, für ein Amt zu kandidieren". wegen seiner Position zum Klimawandel. & lt; / p & gt; & lt; p & gt; & quot; Ich bin gerade aus New Hampshire zurückgekommen, wo überall Schnee und Eis liegen. Mein Standpunkt dazu ist einfach: Debatten darüber sollten der Wissenschaft und den Daten folgen, und viele der Alarmisten zur globalen Erwärmung sollten Sie haben ein Problem, weil die Wissenschaft sie nicht sichert. Cruz & lt; a href = & quot;https://www.youtube.com/watch?v=m0UJ_Sc0Udk & quot; & gt; sagte & lt; / a & gt; am "Late Night with Seth Meyers" letzte Woche. & lt; / p & gt; & lt; p & gt; Um seine Behauptung zu untermauern, zitierte Cruz Satellitendaten, die in den letzten 17 Jahren einen Mangel an signifikanter Erwärmung gezeigt haben. Aber Cruz 'Argumentation & lt; a href = & quot; http://www.politifact.com/truth-o-meter/statements/2015/mar/20 / ted-cruz / ted-cruzs-Welten-Feuer-nicht-letzte-17-Jahre / & quot; & gt; war entlarvt von Politifact & lt; / a & gt;, was gezeigt hat, dass Wissenschaftler genügend Beweise haben, um zu glauben, dass sich das Klima weiter erwärmen wird. & lt; / p & gt; & lt; p & gt; "Was er gesagt hat, ist absolut falsch", sagte Brown auf & lt; a href = & quot; http: //www.nbcnews. untit-be-running-n328046 & quot; & gt; NBC & # x27; s & quot; Meet the Press. & quot; & lt; / a & gt; Er fügte hinzu, dass & lt; a href = & quot; http://climate.nasa.gov/scientific-consensus/ & quot; & gt; über 90 Prozent & lt; / a & gt; Wissenschaftler, die das Klima untersuchen, sind sich einig, dass der Klimawandel durch menschliche Aktivitäten verursacht wird. "Dieser Mann weist auf ein solches Maß an Unwissenheit und eine direkte Fälschung vorhandener wissenschaftlicher Daten hin." Es ist schockierend, und ich denke, der Mensch hat sich absolut unfähig gemacht, für ein Amt zu kandidieren. Brown sagte. & Lt; / p & gt; & lt; p & gt; Brown fügte hinzu, dass der Klimawandel & lt; a href = & quot; http://www.huffingtonpost.com/2015/03/06/california-drought-february- record_n_6820704.html? utm_hp_ref = Dürre in Kalifornien & quot; & gt; verursachte Dürren in seinem Bundesstaat & lt; / a & gt; sowie schwere Erkältungen und Stürme an der Ostküste. & lt; / p & gt; & lt; p & gt; Während Cruz möglicherweise überall in New Hampshire Schnee und Eis gesehen hat, zeigen Daten, dass das Land tatsächlich eine & lt; a href = & quot; http://www.huffingtonpost.com/2015/02/19/cold-weather- winter_n_6713104.html & quot; & gt; wärmer als der Durchschnitt & lt; / a & gt; Winter. & lt; / p & gt; & lt; p & gt; Browns Kritik an Cruz kommt einen Tag, bevor der Senator von Texas einen & lt; a href = & quot; http://www.huffingtonpost.com/2015/03/22 /ted-cruz-2016_n_6917824.html">presidential Kampagne & lt; / a & gt;. & lt; / p & gt; & lt; / div & gt; & lt; div class = "original" & gt; & lt; a href = & quot;http://www.huffingtonpost.com/2015/03/22/ted-cruz-climate-change_n_6919002.html& quot; & gt; ORIGINAL ANZEIGEN & lt; / a & gt; & lt; / div & gt; & lt; / div & gt; & lt; / div & gt; & lt; / div & gt; & lt; script src = & quot; // code.jquery.com/jquery-latest.js"></script> & lt; script src = & quot; /static/js/modal.js" & gt; & lt; / script & gt; & lt; script src = & quot; /static/js/bootbox.min.js" & gt; & lt; / script & gt; & lt; script src = & quot; /static/js/site.js" & gt; & lt; / script & gt; & lt; Skript & gt; (Funktion (i, s, o, g, r, a, m) {i [& # x27; GoogleAnalyticsObject & # x27;] = r; i [r] = i [r] || function () {(i [ r] .q = i [r] .q || []). push (Argumente)}, i [r] .l = 1 * neues Datum (); a = s.createElement (o), m = s. getElementsByTagName (o) [0]; a.async = 1; a.src = g; m.parentNode.insertBefore (a, m)}) (Fenster, Dokument, & # x27; Skript & # x27 ;, & # x27; // www. google-analytics.com/analytics.js' ,'ga'); ga (& # x27; create & # x27;, & # x27; UA-56257533-1 & # x27;, & # x27; auto & # x27;); ga (& # x27; send & # x27;, & # x27; Seitenaufruf & # x27;); & lt; / script & gt; & lt; / body & gt; & lt; / html & gt; "