WKWebView nicht laden von Ressourcen aus dem lokalen Dokument-Ordner

In meine Swift-iOS-app, die ich herunterladen möchten einige dynamische HTML-Seiten von einem remote-server, speichern Sie Sie in das Verzeichnis Dokumente, und zeigen Sie die Seiten von Dokument-Verzeichnis.

Ich war mit diesem, die Seite zu laden:

var appWebView:WKWebView?
...
appWebView!.loadRequest(NSURLRequest(URL: NSURL(fileURLWithPath: htmlPath)))

Alles funktioniert auf dem simulator, aber wenn ich wechselte zu real-Handys, es zeigte einfach eine leere Seite. Ich habe dann mit der app verbunden, die mit Safari, und fand es klagte mit "Failed to load resource".

Dann habe ich versucht, Lesen Sie zunächst den Inhalt der Seite an htmlPathdann verwenden Sie

appWebView!.loadHTMLString()

die Seite zu laden. Es funktioniert nur, wenn die HTML-Seite ist einfach. Aber wenn der HTML-Referenzen etwas anderes, etwa eine JavaScript-Datei auch in das Dokumenten-Verzeichnis (mit einem absoluten Pfad wie <script src="file:////var/mobile/Containers/Data/Application/762035C9-2BF2-4CDD-B5B1-574A0E2B0728/Documents/xxxxx.js">), wird es nicht geladen.

Weiß jemand, warum dies geschieht, und wie das Problem zu beheben?

Mehr info:

  • XCode-version: 7.3.1
  • Bereitstellung Ziel: 8.1 (ich habe versucht, auf 9.3 zu, aber das hat nicht geholfen.)

InformationsquelleAutor der Frage Peter | 2016-09-05

Schreibe einen Kommentar