alekop opened a new issue #1163:
URL: https://github.com/apache/cordova-ios/issues/1163


   Native SwiftUI app with embedded Cordova Web view. Loads fine using the file 
scheme, but I would like to use a custom scheme in order to establish a secure 
context. I've added the scheme and hostname preferences to config.xml file:
   
       <preference name="scheme" value="app" />
       <preference name="hostname" value="localhost" />
   
   `CDVWebViewEngine.pluginInitialize` creates the scheme handler, and attaches 
it to the configuration:
   
       self.schemeHandler = [[CDVURLSchemeHandler alloc] initWithVC:vc];
       [configuration setURLSchemeHandler:self.schemeHandler 
forURLScheme:scheme];
   
   Finally, `CDVWebViewEngine.loadRequest` calls WKWebView.loadRequest with 
"app://localhost/index.html"... But the 
`CDVURLSchemeHandler.startURLSchemeTask` method is never called, and the web 
view remains on about:blank. Tried setting location.href manually (via the 
Safari dev tools), but nothing loads.
   
   The view controller is exposed to SwiftUI like so:
   
       class CordovaWebViewController: CDVViewController {
           init() {
               super.init(nibName: nil, bundle: nil)
           }
       
           required init?(coder: NSCoder) {
               super.init(coder: coder)
           }
       }
   
       struct CordovaWebView: UIViewControllerRepresentable {
           typealias UIViewControllerType = CordovaWebViewController
       
           func makeUIViewController(context: Context) -> 
CordovaWebViewController {
               CordovaWebViewController()
           }
       
           func updateUIViewController(_ uiViewController: 
CordovaWebViewController, context: Context) {
           }
       }
   
   And used like this:
   
   ```
   struct ContentView: View {
       var body: some View {
           CordovaWebView()
       }
   }
   
   ```
   
   Is there anything extra I need to do for an embedded view?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to