cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michal Mocny <mmo...@google.com>
Subject Re: Binary data across exec bridge
Date Tue, 08 Jan 2013 21:05:44 GMT
Created https://issues.apache.org/jira/browse/CB-2173


On Tue, Jan 8, 2013 at 3:52 PM, Michal Mocny <mmocny@google.com> wrote:

> Background: I've been working on implementing chrome.socket [1] for mobile
> chrome apps [2] and porting circ (an irc chrome app) [3].  Teaser video:
> https://docs.google.com/open?id=0B0UdPHoQPXheTzhTZXZHUlpGWHM  (this is
> still in its infancy, and I certainly do plan to submit a version of the
> socket api that will work in cordova without any mobile chrome app magic).
>
> As part of doing that, I had to implement sending binary data across the
> exec bridge (on ios for now), and I think it may be a good idea to just add
> that functionality to cordova core.  My current implementation is certainly
> not the best, so I will extend the exec bridge echo benchmarks to test
> binary transfer speeds and we can improve over time.
>
> My first step would be to implement helpers in js/ios/android which plugin
> devs can call manually to serialize/deserialize binary data into/from
> whatever magical form is most efficient.
>
> Next, I would try to automate these helpers from within the exec call
> (e.g. iterate arguments looking for ArrayBuffer/Blob/etc types before json
> serialization).  As part of doing this, I would need to add "hints" about
> the underlying argument types/some clever way to encode semantic
> information about the arguments list, which we currently do not do.
>
> If anyone has any suggestions or objections please let me know!
>
> -Michal
>
> [1] http://developer.chrome.com/apps/socket.html
> [2]
> https://github.com/MobileChromeApps/chrome-cordova/blob/master/api/chrome/socket.jsand
> https://github.com/MobileChromeApps/chrome-cordova/tree/master/plugins
> [3] https://github.com/flackr/circ
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message