WKWeb​View, the new web view component introduced in iOS 8.0, replaces the old, clunky, memory leaking UIWebView that has been around forever. One of it’s main benefits is the fact that it uses the Nitro JavaScript engine, the same one used by Safari. According to JavaScript benchmarks, it is 3.5 times faster than UIWebView. In addition, from community feedback so far, wkwebview reduced the memory consumption of meteor apps by a factor of almost 10 (say what???).

Neither Apache Cordova nor meteor don’t officially support it yet, but, as part of building a meteor + famo.us ios app, we found out that UIWebView will just not cut it, performance wise.

So, we’ve modified the meteor core cordova plugin to allow the use of WKWeb​View and created a plugin based on Telerik’s WKWeb​View cordova plugin to support meteor. For now, there are two steps to adding WKWeb​View to your app:

# This replaces the default meteor cordova plugin with our version
meteor add cordova:com.meteor.cordova-update@https://github.com/practicalmeteor/com.meteor.cordova-update/tarball/a7e98f27a26b727288da81dcfd8047eccb5f6036

# This package simply includes our wkwebview cordova plugin
meteor add practicalmeteor:wkwebview

Regarding filling issues, please read the guidelines in the practicalmeteor:wkwebview package README, since non-meteor iOS specific issues should be filed with the Telerik cordova plugin, and once solved, I’ll merge them into my meteor supported fork.

That’s it! Enjoy and many thanks to the people at Telerik for creating their wkwebview plugin until Cordova officially supports it.

References