Bis ich neulich gebaut habe, war meine cordova App in der Lage, einen iframe einer Website gut einzubetten; jetzt, vermutlich nach einem update, das ich vergaß, baute ich die App-Ergebnisse in den Iframe leer auf iOS aber funktioniert in Android.
Ich habe die folgenden Einstellungen zu config.xml hinzugefügt:
<access origin="*"/>
<access origin="*.pushwoosh.com" />
<access origin="*.hoby.org" />
<allow-navigation href="*" />
<allow-intent href="*" />
Ebenso wie die folgende Inhaltssicherheitsrichtlinie:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
Was grundsätzlich alles erlauben sollte. Ich habe das cordova-whitelist-Plugin hinzugefügt, mit cordova 6.1.0 und Ionic 1.7.14
Bearbeiten: Es funktioniert tatsächlich auf iOS-Emulator, aber nicht, wenn ich es auf dem Gerät ausführen.
Edit 2: Es scheint, als wäre es ein Problem mit der mobilen Safari; Ich sehe die Dateien über mein Netzwerk und sogar außerhalb von Cordova werden sie nicht richtig geladen. Ich kann jedoch bestätigen, dass das zumindest vor ein paar Tagen funktionierte.
@Phil,
Ihre Anwendung des whitelist
-Plugins ist in der Nähe, scheitert aber wahrscheinlich, weil Sie Javascript in Ihrer index.html haben. CSP
hat viele Entwickler gestoppt. Am einfachsten ist es, Javascript und CSS in ihre eigenen Dateien zu verschieben.
Kurz gesagt, hier ist eine weit verbreitete Lösung:
Als Randnotiz wird das whitelist
System ab Cordova Tools 5.0 benötigt .0 (21. April 2015). Für Phonegap Build bedeutet das seit cli-5.1.1
(16 Jun 2015)
Fügen Sie dies Ihrem config.xml
HINWEIS: DEINE APP IST JETZT VERSTECKT. Es ist an Ihnen, Ihre APP zu sichern.
Fügen Sie Ihrem index.html
HINWEIS: DEINE APP IST JETZT VERSTECKT. Es ist an Ihnen, Ihre APP zu sichern.
Dieses Whitelist Arbeitsblatt sollte helfen.
WIE man Cordova / Phonegap auf das Whitelist-System anwendet
Tags und Links cordova ios iframe mobile-safari ionic-framework