webentwicklung-frage-antwort-db.com.de

Cordova-App hängt beim Start unter iOS 10

Ich habe gerade Xcode 8 Beta installiert, um meine vorhandene Cordova-App in iOS 10 Beta (über Simulator) zu testen. Wenn die App gestartet wird, hängt sie nur auf der Ladeseite - anscheinend wird das Ereignis deviceready nicht ausgelöst.

Daher habe ich auch iOS 10 Beta auf meinem iPad Air installiert (nur für den Fall, dass es sich um ein Simulator-Problem handelt), aber ich erhalte die gleichen Ergebnisse.

Die App funktioniert einwandfrei unter iOS 9.3 (sowohl Gerät als auch Simulator).

Ist jemand auf dieses Problem gestoßen/hat es behoben?

UPDATE

Andere Symptome dieses Problems sind:

  • die App wird korrekt gestartet, wenn Sie die App im Hintergrund anzeigen (zurück zum Startbildschirm wechseln) und die App dann im Vordergrund anzeigen (zurück zur App wechseln).
  • einige Plugins funktionieren erst dann richtig, wenn Sie die oben genannten Änderungen vornehmen
29
DaveAlden

OK, ich fand das Problem und die Lösung dank diesen Beitrag :

Es scheint, dass iOS 10 zusätzliche Einträge im Meta-Tag Content-Security-Policy Erfordert, nämlich gap: Und file:. Nach dem Hinzufügen sieht mein Content-Security-Policy Folgendermaßen aus:

<meta http-equiv="Content-Security-Policy" content="default-src * gap: file:; style-src 'self' 'unsafe-inline'; img-src 'self' data:; script-src * 'unsafe-inline' 'unsafe-eval'">

Die App wird gestartet und funktioniert unter iOS 10 einwandfrei.

Hoffe das hilft anderen.

76
DaveAlden

Ich hatte das gleiche Problem beim Start, und selbst wenn ich zweimal auf die Home-Schaltfläche und dann wieder auf die App tippte, schrieb das Dateisystem von cordova nicht auf das Gerät.

Ich habe viele Dinge ausprobiert, aber schließlich durch Hinzufügen behoben

child-src * gap://ready

zum Tag "Content-Security-Policy"

3
user2981810