1

我正在使用url_launcher:从我的应用程序中打开 youtube、instagram、facebook 和电报链接。在我升级到最新的 Flutter 和 Dart 插件之前,它一直运行良好。

当升级到最新版本的 Flutter 和 Dart 时,canLaunch(url)函数开始失败,从文档看来,我必须遵循此处提到的符合Android 包可见性的指南;https://developer.android.com/training/package-visibility

它开始在所有设备上运行,并且似乎在所有 Android-11 设备和模拟器上运行良好。但它未能仅在三星 S20 上打开相同的链接。

有什么帮助吗?我只是通过这个功能打开 Youtube、Instagram、Telegram、Soundcloud 和其他一些链接;

static launchAction(String url) async {
    if (await canLaunch(url)) {
      await launch(url);
    } else {
      throw 'Could not launch $url';
    }
  }

-- 它仅在 S20 上引发“无法启动 $url”错误。具有 Android-11

ANY HELP PLEASE???

我修改了 AndroidManifest 如下,之后它可以在大多数设备上运行,但不能在SAMSUNG S20上运行;

    <queries>
        <!-- Specific apps you interact with, eg: -->
        <package android:name="com.google.android.youtube" />
        <package android:name="com.facebook.katana" />
        <package android:name="com.instagram.android" />
        <package android:name="org.telegram.messenger" />
        <package android:name="com.soundcloud.android" />
    </queries>
4

1 回答 1

0

Would you try using other package?

https://pub.dev/packages/device_apps

if (await DeviceApps.isAppInstalled('com.nbt.moves')) {
    DeviceApps.openApp('com.nbt.moves');
}
于 2021-05-12T06:34:25.397 回答