从移动设备中的 flutter web 应用程序打开应用程序(如果已安装),然后只需打开该应用程序即可。从网络应用程序我无法打开已安装的应用程序。 在代码中,当我在 android 中运行时,我的应用程序将打开,但是当我在 chrome 中运行时,其他 myapp 将不会打开
void openMyApp() async {
final myAppUrl = "myapp://open"; // Custom URL scheme for your app
final playStoreUrl = "https://play.google.com/store/apps/details?id=com.mxtech.videoplayer.ad";
// Try to open the app
if (await canLaunchUrl(Uri.parse(myAppUrl))) {
print("launch app");
await launchUrl(Uri.parse(myAppUrl));
} else {
// If the app is not installed, open the Play Store link after a delay
await Future.delayed(const Duration(milliseconds: 1500), () async {
if (await canLaunch(playStoreUrl)) {
await launch(playStoreUrl);
}
});
}
}
}
您要启动的其他应用程序是您制作的吗?如果是这样,您可以使用应用程序链接告诉 Android 在遇到特定 URL 时启动它:
https://developer.android.com/training/app-links#android-app-links
您可以将 HTTP(S) URL 添加到清单文件中。当用户安装了您的应用程序后,打开 URL 将打开该应用程序,如果您的应用程序未安装,他们将被重定向到浏览器中的 HTTP(S) 站点(这可能会将他们重定向到 Play 商店或其他地方)。