In meiner app, zeige ich eine externe HTML-Seite entweder in einem CustomTabsIntent oder in einem WebView:Android Browser schneidet die https: // Schema von kompletten Qualifier
if (customTabsIntent != null) customTabsIntent.launchUrl(this, Uri.parse("http://some.where.com/site.html"));
else startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://some.where.com/site.html")));
Aber der Stil dieser HTML ist bereits aktualisiert, aber mein Smartphone zeigt den alten Stil (alte Schriften etc.).
In der * .html-Datei gibt es eine * .css verwiesen:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href='https://my.site.com/assets/css/style.css' rel='stylesheet' type='text/css'>
</head>
Und in dieser * CSS-Datei, gibt es eine individuelle Schrift verwiesen wird; z.B .:
@font-face {
font-family: 'MyFontRegular';
src: url('https://www.openfont.org/assets/mail/fonts/MyFontWeb-Regular.woff') format('woff'),
url('https://www.openfont.org/assets/mail/fonts/MyFontWeb-Regular.eot') format('embedded-opentype');
}
Wie ich schon sagte, der Chrome-Browser in meinem Smartphone die betreffenden Schriften nicht zeigen, weil es die http schneidet: // oder https: // ab. Wenn ich dieses Schema manuell in die Adressleiste vorstelle, wird der richtige Stil angezeigt.
Wie kann ich das https: // Schema in das Adressfeld in meinem Android-Browser erzwingen, wenn es von meiner Android App aufgerufen wurde?
Ok Ich fand heraus, dass es https://some.where.com/site.html sein sollte. Der Browser wird mit some.where.com/site.html (ohne https: //) geöffnet. Wenn ich manuell "https: //" in der Adressleiste hinzufüge, funktioniert es tadellos –
Kannst du den Code für deine WebView-Implementierung bekannt geben? Wenn das ist, was Sie verwenden? – Destry