  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.
