es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo enviar un mensaje de WhatsApp utilizando Flutter?

Estoy desarrollando una pequeña aplicación con Flutter y quiero enviar un mensaje de WhatsApp usando Flutter.

Ya tengo el código y funciona bien, pero lo que quiero hacer es enviar el mensaje automáticamente sin presionar el botón de enviar en WhatsApp.

Este es mi código:

floatingActionButton: FloatingActionButton(
          onPressed: () {
            if (_formKey.currentState!.validate()) {
              sendMessage(context);
            }
          },
          tooltip: 'Enviar',
          child: const Icon(Icons.send),
        ),

Así es como envío mensajes de WhatsApp:

final snackbar = const SnackBar(
    content: Text("Ingrese un número de teléfono válido"),
    backgroundColor: Colors.red,
  );

void sendMessage(context) {
    var phone = _phoneNumber.text;
    var message = _message.text;
    if (phone.length < 9) {
      ScaffoldMessenger.of(context).showSnackBar(snackbar);
    } else {
      _launchURL(phone, message);
    }
  }

void _launchURL(phone, message) async => await canLaunch(
          'https://api.whatsapp.com/send?phone=967$phone&text=$message')
      ? await launch(
          'https://api.whatsapp.com/send?phone=967$phone&text=$message')
      : throw 'No se pudo abrir WhatsApp';

Este código abrirá WhatsApp y tengo que presionar el botón de enviar para enviar el mensaje, pero quiero abrir WhatsApp y enviar el mensaje automáticamente.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Desafortunadamente, no es posible enviar un mensaje automáticamente sin interacción del usuario utilizando la API de WhatsApp. Las políticas de WhatsApp prohíben el envío de mensajes automatizados y requieren el consentimiento del usuario para enviar mensajes. Solo puedes abrir WhatsApp con un mensaje prellenado utilizando la API, y el usuario deberá presionar el botón de enviar de manera manual.

Comments are closed.