Как отправить файл на определенный номер в WhatsApp с помощью любого плагина во флаттере?

Я получил там несколько ответов, но везде я получал только то, как отправить текстовое сообщение на определенный номер мобильного телефона из приложения Flutter. Мне нужен способ отправить файл в WhatsApp на определенный номер во флаттере. Любые предложения приветствуются.

Здесь я использую программу запуска URL, но обмен файлами не осуществляется .. Пожалуйста, помогите кому-нибудь.

      class UrlLauncherService {
  void launchWhatsApp({
    @required String phone,
    @required String message,
  }) async {
    String url() {
      if (Platform.isIOS) {
        return "whatsapp://wa.me/$phone/?text=${Uri.parse(message)}";
      } else {
        return "whatsapp://send?phone=$phone&text=${Uri.parse(message)}";
      }
    }

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

}

2 ответа

Вы можете использовать плагин esys-flutter-share. Хотя есть некоторые проблемы с официальными версиями, но вы можете использовать PR из их git. https://github.com/esysberlin/esys-flutter-share

Примером может быть:

          await Share.file(
       'QR Code', 'qrcode.png', base64Decode(qrCode.image), 'image/png',
       text: qrCode.text);

Вы можете использовать это с помощью кнопки, которая откроет некоторые параметры для обмена файлом, где также находится Whatsapp.

Я думаю, что в WhatsApp нет API для обмена файлами с конкретным контактным номером. Из-за этого плагина флаттера пока нет. я использую Share.shareFiles([file_path]);из плагина Flutter Share в качестве обходного пути.

Другие вопросы по тегам