Skip to main content
QUICK REVIEW

[Paper Review] DroidLink: Automated Generation of Deep Links for Android Apps

Yun Ma, Xuanzhe Liu|ArXiv.org|May 23, 2016
Web Data Mining and Analysis17 references3 citations
TL;DR

DroidLink proposes an automated framework for generating deep links in Android apps by combining static and dynamic analysis to build a navigation graph, enabling direct access to any app page via URIs. The system supports re-packaging apps with deep links without deployment changes, demonstrating feasibility on popular apps and enabling app indexing and cross-app interoperability.

ABSTRACT

The mobile application (app) has become the main entrance to access the Internet on handheld devices. Unlike the Web where each webpage has a global URL to reach directly, a specific "content page" of an app can be opened only by exploring the app with several operations from the landing page. The interoperability between apps is quite fixed and thus limits the value-added "linked data" between apps. Recently, deep link has been proposed to enable targeting and opening a specific page of an app externally with an accessible uniform resource identifier (URI). However, implementing deep link for mobile apps requires a lot of manual efforts by app developers, which can be very error-prone and time-consuming. In this paper, we propose DroidLink to automatically generating deep links for existing Android apps. We design a deep link model suitable for automatic generation. Then we explore the transition of pages and build a navigation graph based on static and dynamic analysis of Android apps. Next, we realize an updating mechanism that keeps on revisiting the target app and discover new pages, and thus generates deep links for every single page of the app. Finally, we repackage the app with deep link supports, but requires no additional deployment requirements. We generate deep links for some popular apps and demonstrate the feasibility of DroidLink.

Motivation & Objective

  • To address the lack of automated deep link generation in Android apps, which currently requires extensive manual effort and is error-prone.
  • To enable third-party apps and services to directly access specific content pages within Android apps via standardized URIs.
  • To build a scalable, automated system that discovers all navigable pages in an app and generates valid deep links without modifying the original app code.
  • To support app indexing and interoperability by publishing deep links in a way compatible with existing app stores and search engines.

Proposed method

  • Design a deep link model tailored for Android apps that captures the structural and behavioral dependencies of content pages.
  • Perform static analysis on app bytecode to extract activity relationships and build a navigation graph of possible page transitions.
  • Use dynamic analysis via MonkeyRunner to simulate user interactions and explore all reachable pages with minimal transitions.
  • Implement an incremental update mechanism that periodically revisits the app to discover newly added or hidden pages.
  • Repackage the original app with generated deep links using a lightweight modification technique that preserves functionality and requires no deployment changes.
  • Integrate with backend cloud services in app stores to maintain and expose deep links for indexing and discovery.

Experimental results

Research questions

  • RQ1Can deep links be automatically generated for all content pages in an Android app without manual refactoring?
  • RQ2How can the navigation structure of an Android app be automatically discovered and modeled to support deep link generation?
  • RQ3What techniques enable reliable and scalable discovery of all reachable pages in an app through dynamic exploration?
  • RQ4How can deep links be published and maintained in a way that supports app indexing and cross-app interoperability?
  • RQ5To what extent can the proposed system generate valid, working deep links for real-world, complex Android applications?

Key findings

  • DroidLink successfully generated deep links for all content pages in multiple popular Android apps, demonstrating the feasibility of automated deep link generation.
  • The combination of static analysis and dynamic exploration enabled the discovery of all navigable pages with minimal transition sequences, improving coverage and accuracy.
  • The incremental update mechanism effectively detected new or modified pages over time, ensuring long-term maintainability of deep links.
  • The re-packaged apps with deep links functioned correctly and supported direct navigation via URIs without requiring changes to the original app deployment.
  • The system was integrated into a top Chinese Android app store, showing real-world deployability and compatibility with existing app indexing pipelines.
  • The approach significantly reduces the manual effort required to implement deep links, enabling large-scale adoption by app developers.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.