WKWebView and Ionic View


#1

I have an Ionic v1 app that I am now using Amazon Cognito for Auth. It works nicely because I built the back-end in AWS with a combination of RDS (database), lambda (functions), and APIG (api gateway). The Cognito users identity can be nicely integrated into the back-end for authorization that partitions the back-end features. Anyway, the login process is using a JS library provided by the folks at amazon. The problem is that the library runs WWAAYY slower when running on an actual iOS device. Research indicates that there is a performance issue w/one of the libraries used by Amazon when it runs in UIWebView.

People have found that cordova apps can use the WKWebView as a work-around to improve the login performance. I know that Ionic is working on cutting the WKWebView into Ionic. A few questions:

  • will this include older v1 apps?
  • is there a timeline for that release?
  • will there be an option to configure Ionic View to use this?
  • or, is there a workaround to get this in Ionic View?

I am planning on some beta testing w/ my client suing Ionic View and would like to resolve this before releasing the test. Any input/help is greatly appreciated…

-Jeff


#2

Answer as far as I know: 4x No.


#3

Ouch! Is that for sure on the release of WKWebView not being available for ionic v1 apps?


#4

Ok, let me refine my answer:

  1. No idea
  2. None that I know or have seen anywhere.
  3. No information known about this at all.
  4. Nope, as it requires a plugin inside the native part: https://github.com/driftyco/cordova-plugin-wkwebview-engine

#5

Thanks @Sujan12, I appreciate the details. It is really unfortunate because I have build a fair amount of the back-end for this project based on the Cognito authentication scheme. I guess I will ask a separate question related to how folks ahve used Cognito or whether this should have been a non-starter form the get-go.

As an alternate approach, could a plugin be written to process the login using the native library provided by Amazon and pass the results back up to the javascript layer? I have never written a plugin so this is an unlikely path for me. But I would really like to keep a lot of what I have already written and need a path to success. This is the first time I have ever come across a show-stopper in the Ionic Framework, but the login time is on the order of 60sec in iOS as opposed to maybe 1sec when running in the browser.


#6

If there is a native library, someone can also write a Cordova plugin.
But the problem can probably also be resolved directly - create that post (and include an easy to replicate repository maybe) and we’ll see.