fix(ios): Allow loading local html files #693
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Platforms affected
iOS
Motivation and Context
Opening a local HTML file with InAppBrowser and UIWebView works fine, but the same code with WKWebView throws an error:
This Pull request is meant to fix that. I'm not an iOS developer, so I'm not sure if the allowingReadAccessToURL param should be more flexible or even configurable by options, but the change seemed to work in my case.
I tried opening an issue in the tracker, but I couldn't select the Apache Cordova project when creating the issue, I guess I lack some permissions.
Description
I read that in WKWebView the function to load files is loadFileURL instead of loadRequest, so I'm using that function if the URL scheme is "file".
Testing
I've executed "npm run tests" and no error was displayed (no success message either, so I'm not 100% sure it worked).
I've tested this in our project but with the 3.2.0 version instead of master branch, so this should have a more intensive testing.
Checklist
(platform)
if this change only applies to one platform (e.g.(android)
)