Movatterモバイル変換


[0]ホーム

URL:


Skip to main content

docs.flutter.dev uses cookies from Google to deliver and enhance the quality of its services and to analyze traffic.

Learn more

Flutter 3.41 is live! Check out theFlutter 3.41 blog post!

Deep linking

Navigate to routes when the app receives a new URL.

Deep links are links that not only open an app, but also take the user to a specific location "deep" inside the app. For example, a deep link from an advertisement for a pair of sneakers might open a shopping app and display the product page for those particular shoes.

Flutter supports deep linking on iOS, Android, and the web. Opening a URL displays that screen in your app. With the following steps, you can launch and display routes by using named routes (either with theroutes parameter oronGenerateRoute), or by using theRouter widget.

Note

If you're running the app in a web browser, there's no additional setup required. Route paths are handled in the same way as an iOS or Android deep link. By default, web apps read the deep link path from the url fragment using the pattern:/#/path/to/app/screen, but this can be changed byconfiguring the URL strategy for your app.

If you are a visual learner, check out the following video:

Watch on YouTube in a new tab: "Deep linking in Flutter"

Get started

#

To get started, see our cookbooks for Android and iOS:

Migrating from plugin-based deep linking

#

If you have written a plugin to handle deep links, as described inDeep Links and Flutter applications (a free article on Medium), you should opt out the Flutter's default deep link handler. To do this, setFlutterDeepLinkingEnabled to false inInfo.plistorflutter_deeplinking_enabled to false inAndroidManifest.xml.

Behavior

#

The behavior varies slightly based on the platform and whether the app is launched and running.

Platform / ScenarioUsing NavigatorUsing Router
iOS (not launched)App gets initialRoute ("/") and a short time after gets a pushRoute App gets initialRoute ("/") and a short time after uses the RouteInformationParser to parse the route and call RouterDelegate.setNewRoutePath, which configures the Navigator with the corresponding Page.
Android - (not launched)App gets initialRoute containing the route ("/deeplink") App gets initialRoute ("/deeplink") and passes it to the RouteInformationParser to parse the route and call RouterDelegate.setNewRoutePath, which configures the Navigator with the corresponding Pages.
iOS (launched)pushRoute is calledPath is parsed, and the Navigator is configured with a new set of Pages.
Android (launched)pushRoute is calledPath is parsed, and the Navigator is configured with a new set of Pages.

When using theRouter widget, your app has the ability to replace the current set of pages when a new deep link is opened while the app is running.

To learn more

#
Was this page's content helpful?

Unless stated otherwise, the documentation on this site reflects Flutter 3.38.6. Page last updated on 2025-10-30.View source orreport an issue.


[8]ページ先頭

©2009-2026 Movatter.jp