Tether Launches HTML5-Based iPhone Tethering Solution
31–40 of 64 posts
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#32Too bad Android does not have any visible plans to implement WebSocket (which is now RFC 6455). Perhaps the development of HTML5 apps on Android has lower priority for Google than for Apple, to force the development effort into native, which they can curate and control. This hypothesis is also corroborated by comparing HTML5 performance in Android and in iOS (Android is usually 300-500% slower).
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#33Too bad Android does not have any visible plans to implement WebSocket (which is now RFC 6455). Perhaps the development of HTML5 apps on Android has lower priority for Google than for Apple, to force the development effort into native, which they can curate and control. This hypothesis is also corroborated by comparing HTML5 performance in Android and in iOS (Android is usually 300-500% slower).
chrome for android supports websockets.
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#34Earlier quoted context omitted.
I can't really go into much more detail than the first responder did without getting into trouble :) Let's just say it's magic.
If that’s how it works it means that all my data is going through your proxy server. Is that correct? Is the connection encrypted?
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#35Re: Tether Launches HTML5-Based iPhone Tethering Solution
#36On the client (the Mac) they have a IOKit ethernet driver that shows up in Network Settings. This becomes your default route (after some fake DHCP magic) and then captures packets and relays them to their application that runs in userland.
Their userland application contains a lightweight TCP/IP stack that interprets those packets. (For example http://www.sics.se/~adam/lwip/)
The lightweight TCP/IP stack contains unimplemented callbacks for opening/closing sending/receiving data. In this case those callbacks are implemented as a higher level network protocol.
That 'wrapped' TCP/IP protocol is then relayed to the iPhone via the usbmux protocol. This allows you to map a TCP/IP service on the device to a local port on the Mac. (I happen to have written a nice usbmux proxy three years ago)
So now the wrapped TCP/IP is arriving at the iPhone, in the form of higher level 'network stack commands'. The iPhone app now simply has to interpret these commands and translate them into real socket open/close read/write commands.
At this point packets are flowing through a fake Ethernet device driver to a secondary TCP/IP stack, over a USB cable to an iOS app which will do actual socket calls and talk to the real network.
Soooo, my guess is that for this new app they use basically the same setup except that the iOS app is gone and replaced with a simple web page with web sockets that point to both that fake TCP/IP stack on the mac and to a hosted proxy service on their end. Relaying data back and forth.
Crazy hack. Amazing it works :-)
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#37But if you're friends with an iOS developer, you can ask him or her to build an ad-hoc copy of iProxy for your iPhone and it won't cost you anything.
(Or get 100 of your closest iPhone-using friends to pitch in on an iOS developer account)
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#38Wow. Cool hack. But if you're friends with an iOS developer, you can ask him or her to build an ad-hoc copy of iProxy for your iPhone and it won't cost you anything. (Or get 100 of your closest iPhone-using friends to pitch in on an iOS developer account) https://github.com/tcurdt/iProxy/wiki
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#39Earlier quoted context omitted.
chrome for android supports websockets.
Only on 4.0: it represents less than 1.5% of all Androids now. iOS had Websockets since 4.1, for over 1.5 years. Unless Chrome gets back-ported to Android 2.2 and 2.3 it will take a very long time.
Re: Tether Launches HTML5-Based iPhone Tethering Solution
#40Wow. Cool hack. But if you're friends with an iOS developer, you can ask him or her to build an ad-hoc copy of iProxy for your iPhone and it won't cost you anything. (Or get 100 of your closest iPhone-using friends to pitch in on an iOS developer account) https://github.com/tcurdt/iProxy/wiki
Or jailbreak your phone and re-enable tethering.