How do you use AIR's WebKit/htmlloader?

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

Hey Chris,
Thank you for reaching out to the community! Our team has been working on AIR apps for a while now. It has been frustrating to say the least, trying to integrate sophisticated HTML5 apps into our different AIR apps.
The existing solutions on mobile and desktop are not very satisfying. Mobile has gotten better because of the StageWebView, but there are still several flaws that make the platform unpredictable. On desktop it is even worse and we are facing a tough decision.
We want to integrate an HTML5 app into an already existing AIR app. The two applications will have to communicate in some form with each other. The StageWebView approach with a simple ExternalInterface would suffice, as long as we could pick from the browsers that are installed. The ANE class approach also sounds good, but only if there is a similar way of communication.
We think that keeping the component (WebView or ANE class) as lean as possible is one of the most important things. We don't want to face the same issues in the near future. There is also a need to update that underlying layer fast. Browser vendors (with some exceptions of course ) have much faster release cycles nowadays. They will keep pushing the boundaries and we need to adjust accordingly.
The HTML5/JS should take care of the DOM manipulation, event handling and communicate back to Actionscript in a simple way. There is no need for Actionscript to worry about these things. And if there is, create a simple JS layer using the interface to do the job.
Here is a list of features that are essential to us:
Accessing the local file system (xhr requests on the local file system):
Worst case scenario: Using the ExternalInterface to feed files to the HTML application.
Configure the cache or at least manipulate cache handling
Much better HTML5 / CSS3 support: Video, Audio, SVG, CSS3 Animations, etc.
Easier and faster way to update the underlying WebKit/Chromium (relevant for ANE)
Are there any plans yet? Is it on your roadmap? Are we talking about years or months? Answers to these questions are very crucial for us. Only with those answers will we know, whether we can keep working on the AIR platform or if we have to look for alternatives and migrate our entire application.
We are looking forward to your answers.
Thanks

Similar Messages

  • Why do you use air?

    Hi
    I am currently at uni writing a dissertation on creating desktop apps and in particular using Adobe air.  I was hoping I could get some views on it from the people who actually use it.  In particular why you use air as opposed to other development tools (ie titanium and silverlight)?  Also how easy do you find it to use?
    Would really appreciate any feedback I can get.  Thanks.

    Hi
    Thanks for the responses.  I am finishing the write up at the moment and it would be great if I could get some more feedback from developers, general thoughts on air would be good.
    Thanks

  • How do i use air sync to sync with my iTunes on my computer

    How do i use air sync to sync with my iTunes on my computer

    You cannot use ActiveSync for that, but there are SharePoint clients for the iPhone. Windows Mobile 7 natively supports SharePoint with SharePoint Workspace Mobile, part of Microsoft Office Mobile. Android and BlackBerry might also have some apps.
    Use Microsoft SharePoint Workspace Mobile
    http://www.microsoft.com/windowsphone/en-us/howto/wp7/office/use-office-sharepoint-workspace-mobile.aspx
    iPhone SharePoint Apps Shootout
    http://www.codeproject.com/KB/iPhone/iPhoneSharePointApps.aspx 
    Comparing SharePoint iPhone Apps
    http://blog.praecipio.com/2010/11/02/comparing-sharepoint-iphone-apps/
    MCTS: Messaging | MCSE: S+M

  • How do you use Default Resource Access Information?

    I have some 10g Forms & Reports that I want to use with SSO and they will all be connecting to the database with the same connection info. I know how to configure a Default Resource Access Information, but how do you use this with Forms & Reports?

    Douglas,
    the default Resource Access Infomation should be the connection information right? This is used in conjunction with SSO. You need to configure your F&R applications to delegate authentication to SSO by placing ssoMode=true in the config section of formsweb.cfg.
    The Forms Servlet will connect to OID retrieve the Resource Access Information (descriptor) for a given user and automatically log them into the application.
    Users will need a global identity in OID and SSO must be enabled to use resource access info with F&R
    regards,
    tt

  • How do you use emojis in the iPhone 5s

    How do you use emojis in the iPhone 5s

    Tap on Settings, General, Keyboard, Then Keyboards, Add New keyboard, and choose emoji.
    The next time you are in text messaging or email, and the keyboard pops up, select the globe to get to the emoji symbols.

  • How do you use forward and back button on mouse and use "zoom" in web browser.

    Ok so apparently this forum is ruled with an iron fist or something my very honest and truthful problems with these issues seem to have been instantly deleted in my last discussion?
    I'll try this once more.
    1) How do you use the forward and back button on a mouse without having to buy a product like Steer Mouse? There must be a way to do this without having to buy a program given it's such a useful feature that 99% of users need. I don't want to spend hours researching something that should already work. Any advice?
    2) How do you zoom in for web browsers like Chrome without it globally zooming in everything on the monitor (even background applications). I don't want to zoom in background applications. I want to be able to zoom in the web browser and still maintain all the features like the side bar, not just a little magnifying glass type thing.
    I'm currently zooming in with the CTRL-Middle Mouse button, but I can't find a way to use this feature so it's useful to browse the web it seems to not scale the browser correctly but rather is a global zoom. Any solution for this?

    Thanks so much!
    Like I said I am new to Apple products so it's still unclear to me which programs I do or don't need as I'm setting up and configuring all my software and devices.
    The Logitech Control Center appears to work perfectly for what I was trying to do!
    I accidently clicked "This helped me" instead of "This Solved My Question", sorry about that this was a solve!

  • How do you use new ipod nano with itunes 10.6.3?

    How do you use new ipod nano with Itunes 10.6.3.  I have MBP and it lists itunes 10.6.3 as most current version and won't let me install itunes 11

    The seventh generation iPod nano requires at least iTunes 10.7 and Mac OS X 10.6.
    (85225)

  • How do you use the Multiple Item Information dialog box ???

    How do you use the Multiple Item Information dialog box ???
    Where are the instructions on how the information in the Multiple Item Information dialog box equates to ...
    1. The way iTunes sorts tracks and albums
    2. The reason to select a leading check box
    3. Why there are Option selections (Yes /No) and leading check boxes.
    4. Why some changes remain in the track info, but do not "take effect" in iTunes (Part of a compilation is an example)
    Looked in Help, Support, went to the local Genius bar for an hour, even arrainged a call from apple support ...
    Thanks

    As Christopher says, it's a compilation. Different tracks are by different artists.
    Setting the *Album Artist* field to *Various Artists* and setting *Part of a compilation* to Yes should be all that is required. Depending on your *Group compilations when browsing* setting ( I recommend On ) either should suffice but I suggest doing both.
    Based on your commentary, I selected all the "O Brother" tracks, and checked the boxes for everything line that was blank in the Info and the Sort panes. Only exceptions were the album name and the disc number 1 of 1 and the artwork. I blanked and checked anything else.
    That's not what I meant. When you select multiple tracks, only those values which +are already common+ to all tracks are displayed. Typically these will include Artist, though not with compilation albums, Album Artist, Album, No. of Tracks, Genre plus various sort fields. A blank value may indicate that different tracks have different values or it may be that the value is blank for all tracks. For the drop down values on the Options tab the value shown may not reflect the information in every tag. If values you expect to be common, such as Album Artist or the Album title are not displayed you can simply type these in and click OK. This will often be enough to group the album.
    If you place a checkmark against the blank boxes and apply changes then you will clear those fields so you should only do this if that is the effect you want. Putting a checkmark next to an empty (representing different values) *Track No.* box, for example, will just clear the all the track numbers which is very rarely useful.
    Adding then removing extra text is for a specific problem where despite all common values being identical across the tracks of the album iTunes seems to "remember" that it should see two albums. A typical example would be when an album originally listed as *Album CD1* & *Album CD2* is given disc numbers X of Y and then has the Album name changed to Album. I've seen iTunes merge all but one track into the new album, but insist on listing one remaining track separately, despite both albums having the same title. In this case I've found overtyping the album title again has no effect whereas changing it to AlbumX and then back to Album does what I was trying to achieve in the first place.
    Don't forget that even properly organsied albums may still break up if you don't chose an album-friendly view. Sorting on the track name or track number columns can be useful in some circumstances but in general I revert to Album by Artist when browsing through my library.
    tt2

  • How do you use ReadyHosting's myLittleTools?

    A client I do some work for occasionally, has normally wanted me to add links to various partner websites. These have all been pretty small over the years I’ve done this work for him, like make 5 at most. Well now he’s hit me
    with about 2 dozen partners that he wants a link to. When it gets to this point I think of databases.
    I created a MS SQL Server database on Ready Hosting’s server, associated with my client’s account. (Got his permission before doing so.) Then I created a user for that, so that I could get into it. Ready Hosting uses something
    called “myLIttleTools” for managing and administering one’s SQL Server databases on their servers. So I tried going into it, entering the credentials that I created. But it refuses to allow me to log in. I get the following error message:
    “Error -2147217843
    Login failed for user ‘MyID'.
    Provider=sqloledb;Data Source=ReadyHostingServer;Initial Catalog=ClientDB;User Id=MyID;Password=MyPassword;Connect Timeout=120;”
    (Clearly I’ve changed the credentials here; they’re not what I’ve created.)
    Two days ago I opened a help ticket with them. Still haven’t heard from them.
    So I’m asking here, does anyone have any experience with SQL Server database management on ReadyHosting? How am I supposed to log in when it refuses to accept the credentials for the user I created on it? They want you to use
    this “myLittleTools” thing, but WOW how do you use that when you’re prevented from even getting into the door?
    Rod

    Readyhosting is still around? They were a really good host back at the turn of the century then were bought by a company that proceeded to hire incompetents and became totally unreliable. I'd have thought they folded a decade ago.
    As others said, this is an issue to be resolved through Readyhosting's support personnel. EW is not really deigned for managing database servers. If their connection permits it you can use the MS SQL tools to manage remotely (doubt they allow it though)
    and most people use MS Web Developer Express for their database work on small websites not EW.
    Free Expression Web Tutorials
    For an Expression Web forum without the posting issues try
    expressionwebforum.com

  • How do you use AdobeExportPDF??

    I'm not sure what you have changed with ExportPDF, but have used it in the past and there was always sign in page that popped up after you paid the annual fee. Now it keeps trying to sell me the subscription again. How do you use Export now? You have already charged my bank for the fee and I can go to my account when I sign in and see that I'm supposed to have an active subscription, but there is no place to select the option of exporting a PDF to convert to word. I have called Adobe customer care and guess what, no support available there nor help getting to the right people to help. I see from the discussions on this page that it seems to be a common problem.
    So, how do I use Adobe ExportPDF?
    Is this a scam?
    Why did you make it so difficult to use now?

    Im having the same issue!!! Help

  • How do you use multiple outputs on a VSTi like Kontakt or Battery?

    how do you use multiple outputs on a VSTi like Kontakt or Battery with Logic Pro 7.1? I've heard someting about using AUX busses, but can anyone please provide an actual clear, step by step basic guide?
    I've had Logic 3 months now and just don't know how to do this yet, and have yet to actually find it in the manual!!
    thx

    http://www.sonikmatter.com/wiki/index.php/Tutorial:MultiChanAudioSetup

  • How can you use iMessage between 3 iPads with 3 different users but only one Apple ID?

    how can you use iMessage between 3 iPads with 3 different users but only one Apple ID?

    No you do not need separate Apple ID's in order to use 3 devices with one Apple ID. I use 4 devices to Message and FaceTime and all use the same Apple ID. You do need to add additional email addresses for the other devices.
    Look at this very informative video for the instructions.
    http://macmost.com/setting-up-multiple-ios-devices-for-messages-and-facetime.htm l

  • How can you use the same e-mail address for multiple ipads?

    I have two iPads.. an iPad and an ipad 2.  I registared my new ipad 2 and now my old ipad is will not let me log on and is telling me that my e-mail address is already in use.  how can you use the same e-mail address for multiple ipads?

    And by using the same Apple ID you can also share purchases.  If you have a different Apple ID for each iPhone then you can't share purchases.

  • How do you use wirelless keyboard with emoji?

    Just downloaded emoji on ipad. Have a wireless keypad! how do you use it?

    I see this:
    Connecting a Music Keyboard to Your Computer
    If you play a keyboard instrument, you can connect a MIDI-compatible music keyboard
    to your computer to play and record Software Instruments.
    To connect a music keyboard to play Software Instruments:
    If the keyboard is a USB MIDI keyboard, connect the USB cable to the keyboard and
    to your computer.
    If the keyboard is a standard MIDI keyboard, connect the keyboard to a MIDI
    interface using standard MIDI cables, and connect the interface to your computer.
    Be sure to follow the instructions that came with the keyboard, which may include
    installing the correct driver on your computer.
    This doesn't tell me what I need to do though. I'm sorry if I sound like a moron, but I can't figure this out haha. I've got everything plugged in and turned on. What is the next step...and the step after that....to make it so that when I play my keyboard, it shows up on Garageband and I'm able to record...

  • How do you use the bluetooth VIs with a Microsoft Bluetooth Driver?

    How do you use the LabVIEW Bluetooth VIs with the Microsoft Bluetooth driver?  I have been trying with no such luck.
       I want to use 2 computers to talk to each other using the bluetooth VIs.  Eventually, I think we would like a PDA/phone to talk to a custom built electronics board with Bluetooth.  But for now, I would just like 2 computers to talk and then eventually talk to our own device. 
    One is a desktop w/ the Belkin F8T012 USB adapter.  It installs fine with the Belkin driver (but I know I need to use the Microsoft Driver in order to use the LabVIEW VIs, but I have tried to get Windows to install its own but it says it is a BCM92045DG-Flash.  It says it cannot install it because it cannot find the necessary hardware.  I thought this USB adapter was on the approved Bluetooth devices list?  What else should I try?  Another Bluetooth USB adapter? 
    The other computer is a Dell Latitude 820.  It has a built in Bluetooth module which I believe is the Dell 350 Bluetooth Module.  On this machine I have been able to setup a COM port with a bluetooth device (blood glucose meter).  It came with a serial port interface which we modifed to go through a bluetooth interface.  It comes up as COM40. We have been able to communicate to it using their program originally designed to talk through a serial port.  But we would like to use the Bluetooth VIs in LabVIEW.  I can't even use the Discover VI.  Perhaps it is not using the Microsoft Driver as well.  Do I just uninstall the driver and then try to have Windows install its own driver?  Do you have any other recommendations?
    Thanks,
       Javi

    Hi Javi,
    This sounds like an issue with Windows and your specific Bluetooth devices.  As you mentioned, the LV Bluetooth VI's do require that the devices use the Windows drivers.  Take a look at this link for specific requirements for using Bluetooth with LabVIEW.  Also, you can take a look at our Developer Zone tutorial on designing Bluetooth applications a found here.  Regarding your device drivers, sometimes it is as easy as uninstalling the driver and then letting Windows discover the device and fine its own driver.  You could check out the Microsoft Knowledgebase for more information.  Thanks and have a great day!    
    Stephen S.
    National Instruments
    1 Test is worth 1000 expert opinions

Maybe you are looking for