Skip to main content
chris.campbell
Community Manager
Community Manager
June 11, 2014
Question

How do you use AIR's WebKit/htmlloader?

  • June 11, 2014
  • 74 replies
  • 41371 views

Hi everyone,

A long standing issue in AIR has been the inclusion of an older version of WebKit.  The request to update this library has come up many times in the forum and is in the top 10 on the community driven Uplist feature page.  As with the recent and ongoing physics discussion, we're not committing to any changes purposed below at this time,  as we're purely in an investigation mode at this time.  We realize that this is an important feature and we need further clarification on what you're looking for.  Please read on for questions from our development team.

We are exploring updating WebKit, but due to our modification of the WebKit source, this will be difficult, and updating WebKit will change the HTML DOM, possibly breaking content authored for our existing DOM.

So we are also exploring leaving HTMLLoader alone, for now, but providing a reasonable alternative.

StageWebView was originally written as a replacement for HTMLLoader on mobile (because we could not use our WebKit on mobile, StageWebView took advantage of the browser provided by the platform).

But it was extended to the desktop as an unsuccessful solution to this problem.

On mobile, content was probably newly written (so it could be tested with StageWebView), and the browsers were similar enough to our WebKit that the DOM impact was minor.

But on the desktop, forcing older content written for our WebKit to run on Internet Explorer 8 (as an example) was a disaster due to the differences in the DOM’s. We resolved this by making HTMLLoader versus StageWebView on the desktop a choice.

Which gets to the questions (for desktop development only).

Which is more attractive, an embedded web browser or using the system browser? Is it valuable to provide both?

For instance, using the native browser can save on code size (perhaps 6 MB), but you must create and test portable HTML, and you face the risk that future updates to the system browser breaks your content.

How much interop do you need between AS and JS?

Hearsay suggests another problem with StageWebView is there is no interop between ActionScript and JavaScript, whereas HTMLLoader had a lot of support.

Would StageWebView be sufficient if it exposed an ExternalInterface, or sandbox bridge, level of functionality? For instance, if AS could register a list of functions which could be called from JS (and vice versa), would that be enough? Or is there something else that HTMLLoader does that is essential?

For instance, one of the ideas being explored is to provide an entirely new class (perhaps as an ANE) which links an unmodified version of the latest WebKit source as a static library. By using unmodified source, we can more readily update to newer versions of WebKit.  As well, if we leave the existing classes unchanged, we don’t risk breaking existing content. But if we use unmodified WebKit source, we may find some of HTMLLoader’s functionality impossible to match, which is why I’m interested in understanding the essential functionality, so we can decide if a sufficient, minimal (so it’s easier to support without customizing Webkit) interface for it.

Thanks,

Chris

This topic has been closed for replies.

74 replies

Participant
November 25, 2017

Are there really people here who haven't switched to Electron? Adobe abandoned HTML for AIR a long time ago. If you want to distribute desktop apps using HTML5, Electron is really the way to go.

January 30, 2019

I continue to upload my flash application online through adobe air htmlLoader today 2019

November 11, 2017

I need a new HTMLLoader that actually works with HTML5 code. Will HTMLLoader ever be fixed. The only features I need are ability to run newer HTML5/JS/CSS style code & an AS to JS bridge. Executing JS from AS and getting a returned value should be good enough for me. Executing AS from JS is probably a good feature as well but not as important as calling JS from AS.

Legend
November 11, 2017

brianm74259883  wrote

The only features I need are ability to run newer HTML5/JS/CSS style code & an AS to JS bridge.

So a complete modern browser running inside AIR then....

This project is mature and used by many.

GitHub - tuarua/WebViewANE: WebView Adobe Air Native Extension for OSX 10.10+, Windows Desktop, iOS 9.0+ and Android 19+…

caiocanalli

March 31, 2017

This question has been open for a long time.

Any progress on this topic?

June 1, 2017

Yes, here is the answer:

Native WebView AIR Native Extension by distriqt — Kickstarter

I`m just evaluating if we need the full source code license.

Let´s make it happen!!

Robert Mc Dowell
Legend
March 31, 2017

why not integrate a full web engine like blink, gecko or webkit into air and update it at every air update and make a full JS <-> bridge?

or maybe an ANE?

Legend
January 13, 2017

Without wishing to spam. And for anyone subscribed to this thread.

I've created an ANE which allows you to embed a more modern webView in AIR.

It uses Chromium Embedded Framework for Windows and WKWebview for OSX

https://github.com/tuarua/WebViewANE 

It won't solve everyone's issues. Project will be updated regularly

Known Participant
January 13, 2017

we should seriously collect money and pay you for your efforts...

TX MAN!!!

Participant
December 13, 2016

I'll add our voice to this thread. We're coming up to a decision point on whether to stick with an existing investment in our AIR based architecture.

Up-to-date Webkit / HTML5 support for Desktop is the single critical factor.

I'm not sure which is more disturbing: the lack of support, or the lack of communication. Both are terrible.

A hail mary: Does anyone on this forum have firsthand experience with ANE's like NativeWebView ?

thanks!

Inspiring
December 13, 2016

I have used Distriqt NativeWebView many times and it work's wonderful. I think I also remember Distriqt saying they were getting a lot of request to make that ANE also work for the Desktop... which I believe they said they were planning on doing. So that's personally what I'm holding out.

Muzak
Inspiring
December 13, 2016

That's a $50 "solution" that only works on iOs and Android. Even if (and apparently that's a big "if") they bring it to the desktop, it still won't let one do multi window applications as StageWebView only works on the main window stage.

Known Participant
December 13, 2016

Hi Chris,

can we please get an update?

regards,

Sean.

Dr_Resorb
Participating Frequently
December 13, 2016

Chris, could you give us an update on what is going on?  Will the ANE make it into Air24? Air25? We at least need a timeframe to continue our development process. Thx.

Known Participant
December 13, 2016

yes please Chris,

Thank you,

Sean.

Dr_Resorb
Participating Frequently
December 13, 2016

Hey born2code, you should write your post as a reply to chris.campbell, not to my post ;-)

Inspiring
November 14, 2016

PLEASE PLEASE with sugar on top give us an update to this. Still can't believe this discussion started almost 2 and half years ago.

Known Participant
November 14, 2016

any news at all will be GREATLY appreciated

regards

Sean

Known Participant
November 11, 2016

Hi Chris, any progress on this? Please let the community know where we are with this important issue.

regards,

Sean.