Как запустить другие android приложения с помощью приложения flutter - PullRequest
0 голосов
/ 18 июня 2020

Я использовал следующий метод, как указано в документации.

  Future<void> launchUniversalLink(String url) async {
    if (await canLaunch(url)) {
      final bool nativeAppLaunchSuccess = await launch(url, forceSafariVC: false, universalLinksOnly: true);
      print(nativeAppLaunchSuccess);
    }else {
      print('launch not successfull');
    }
  }

, если я даю URL = 'https://www.WhatsApp.com'

  print(nativeAppLaunchSuccess); output ==> true 

, но все равно приложение запускается в браузере. может ли кто-нибудь помочь мне с этой проблемой

1 Ответ

1 голос
/ 18 июня 2020

Ой, прости. Это моя ошибка.
Пожалуйста, используйте флаттер-пакет 'device_apps' и его использование описано ниже.

А вот как узнать имя пакета приложения.
https://www.techmesto.com/find-android-app-package-name/

В ios вы знаете официальную открытую схему URL другого приложения. Но обычно мы не можем знать этот URL. Итак, приведенный ниже код ios выполняется, он откроет страницу магазина приложений, и вам понадобится кнопка sh «открыть».

if (Platform.isAndroid) {
  if (await DeviceApps.isAppInstalled('com.nbt.moves') ==
      true) {
    DeviceApps.openApp('com.nbt.moves');
  } 
} else {
      const url =
        'https://apps.apple.com/kr/app/%EC%BA%90%EC%8B%9C%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C-%EC%8A%A4%ED%85%9D%EC%97%85/id1400703652?uo=4';
    if (await canLaunch(url)) {
      await launch(url);
    } else {
      throw 'Could not launch $url';
    }
}
...