📜 ⬆️ ⬇️

Future web browsers and user device ecosystem

It has always been strange to me to see how different devices of the same person interact with each other. In fact, we are still at the same level when we sent files to each other via Bluetooth. I am glad that this problem has started to be solved recently, for example, maybe you remember the Palm WebOs (HP) presentation and the Touch To Share function, there was a moment when one device touched another and the web page seemed to flow between them. in this video more clearly.

In the latest Apple presentation, where they introduced the new iOS 8, Continuity technology was shown, allowing applications to see other user devices and share information with them. You wrote something in the mail client on the phone, you're tired - you can continue from the same place without saving to drafts.

All this is very cool, but practically does not make life easier for ordinary web developers. Is there any solution?

Now almost all browsers allow you to synchronize between devices through their services. For Chrome, this is a user in Google, for Safari - iCloud, Firefox uses Firefox Sync, and in Yandex Browser this is a Yandex account. Synchronization is very convenient, on all devices the same passwords, tabs, bookmarks, sometimes even Cookies. Some go even further, in Chrome, you can choose as a device for printing - your mobile device. And in Yandex Browser there is a quick call function that allows you to “quickly make calls to numbers found on the Internet."
')
As you can see, browsers make full use of the possibilities of working with user devices, as with a single ecosystem. But I, as a web developer, also want to touch this. Then I thought, what if the browser had some kind of JavaScript API, with the help of which I could learn about the user's devices and perform some actions (of course only with the permission of the owner).

The main directions that open thanks to this:
  1. Knowing what devices a user is using can help websites improve their User Experience (suggesting to install an application for your device type)
  2. Expanding the capabilities of one device to another (on laptops there is no accelerometer or GPS)
  3. Simplification of scenarios in which the user needed to interact between devices (analogs of the same quick call from Yandex Browser)


In fact, you need only a few methods:
  1. Api.getDevices () - get information about user devices
  2. Api.connect (device, mode) - establish connection with a specific device (request the necessary access rights)
  3. Api.send (device, data) - the basic method for sending any data to the device
  4. Api.receive (device, callback) - the basic method for receiving data from another device
  5. Api.push (device, message, data) - maybe even sending a certain push message with data.


You can invent real scenarios to infinity, that's what came to my mind.

Shop script
Suppose you fill out a product card on Avito or EBay. At some point, you need to put photos of the goods, well, if you did it in advance, but if not, then you can certainly try to take a picture of what you need on the camera of the laptop. But imagine if the site, next to the file download button, offers to use the camera of your smartphone as well? You simply press a button, take out a phone, take photos, and they automatically appear on the website. Simple and convenient.

Ticket Scenario
I am always a little afraid to leave my mobile number on sites, even if it is an air carrier, it seems to me it would be much easier if the carrier could send me an electronic ticket without asking me for a real phone number:

And a bunch of other features, for example: managing web games and video services via a mobile device, expanding screen capabilities (in panorama maps, display a panorama on one device, and a map on another), etc.

If you further develop the idea, you can give access not only to the ecosystem of devices, but also applications. Open the address from a computer through Foursquare or a navigator, and maybe on Booking.com? Why not.

I would be happy to hear from you examples of how such functionality would be useful to you personally. Perhaps, if browser developers see that this is needed by many, we will see implementation in the very near future.

Source: https://habr.com/ru/post/233937/


All Articles