The web's utility rests on its connectedness, the so-called "deep links" that take you to specific pages on a website rather than just its landing page. But in the mobile app ecosystem such interconnectedness is both rare and time-intensive to setup. Researchers from Microsoft Redmond lab hope to change this with uLink, which allows linking to and between specific, individual locations within different mobile apps – kind of like browser bookmarks for apps.
uLink can be deployed in exactly the same way as existing deep linking libraries from Apple and Google and others, as shortcuts baked into an app by its developers. And in this function the Microsoft researchers suggest it will require fewer lines of code than the alternatives. But its more exciting potential is in user-defined deep links.
Possible uses envisioned include eBay listings, news stories, Amazon product listings, favorite recipes, frequent tasks such as library renewals, word of the day in dictionary apps, songs, and movie information. These could be saved for personal use and also shared with others to open the same locations in the same apps on another device.
One of the more complex examples suggested is of a deep link that an allergy sufferer might create in Android (assuming they can't just use a standard widget). A weather app might include a pollen count forecast that takes one or two taps to access beyond the default view, say, on a tab you can tap on after bringing up the allergies forecast from the main forecast view. The deep link could act as a shortcut straight to that pollen view.
uLink has been designed to constantly record user interface events, or actions, while in a given activity – the caveats here being that it can't handle gestures unless they trigger an event understood at the OS level (so swipes and pinches are likely out), and that in certain circumstances taps will only give uLink screen coordinates, which limits the ability to share links across devices (since screen resolutions vary wildly). Once you reach a new shortcut-reachable view (for the technically-inclined, this would be anything with a URI, or uniform resource identifier), uLink restarts its recording.
The system has been tested on 34 of the thousand most downloaded Android apps, and also with IFTTT (if-this, then-that) integration. The uLink-enabled apps feed into two services: Bookmark, which stores saved links; and Stuff-I've-Seen, which holds a searchable index of links recorded with the process described above. These links can also be shared with others, just like weblinks, on the proviso that they don't point to things that change depending on the user, location, or device.
The researchers have not yet addressed the potential privacy and security issues this recording method and these services can have, though they are aware of them and have considered encryption and opt-out policies as possible solutions.
It's also worth noting that while they insist uLink requires considerably less work for developers to support – approximately eight lines of code per app compared to 20-30 lines per deep link for existing mobile deep links on Android – it still requires an explicit decision to support properly. And its real-world usefulness would be sorely limited without it working in every app.
In any case, it's a promising step forward in improving integration between mobile apps so that they work less like silos and more like a smarter web.
A paper describing the project was published in the Proceedings of the 14th Annual International Conference on Mobile Systems, Applications, and Services (or MobiSys 2016).
You can see a video below that explains the technology.
Source: Microsoft Research