从移动设备中的 flutter web 应用程序打开应用程序(如果已安装),然后只需打开应用程序

问题描述 投票:0回答:1

从移动设备中的 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);
        }
      });
    }
  }
}
flutter dart
1个回答
0
投票

您要启动的其他应用程序是您制作的吗?如果是这样,您可以使用应用程序链接告诉 Android 在遇到特定 URL 时启动它:

https://developer.android.com/training/app-links#android-app-links

您可以将 HTTP(S) URL 添加到清单文件中。当用户安装了您的应用程序后,打开 URL 将打开该应用程序,如果您的应用程序未安装,他们将被重定向到浏览器中的 HTTP(S) 站点(这可能会将他们重定向到 Play 商店或其他地方)。

© www.soinside.com 2019 - 2024. All rights reserved.