在 IOS 上从 flutter 启动 Whatsapp 时出现问题

Problem launching Whatsapp from flutter on IOS

在 IOS 上无法通过 Flutter 中的 whatsapp 发送消息。它在 Android 上运行良好,但在 IOS 上 whatsapp 无法启动。我尝试了 3 种不同的方法,但都失败了。

亚军Info.plist

<key>LSApplicationQueriesSchemes</key>
<array>
  <string>whatsapp</string>
</array>

1) 首先我试过这种方式通过消息发送消息

var whatsappUrl = "whatsapp://send?phone=$phone&text=$message";
  if (await canLaunch(whatsappUrl)) {
    await launch(whatsappUrl);
  } else {
    throw 'Could not launch $whatsappUrl';
  }

但是它在启动 whatsapp 时给出了一个例外

2) 我尝试的第二种方法是从这个 link 找到的,但是它给出了找不到页面的错误

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()}';
}

3) 最后我试着打电话给 whatsapp url

String message = 'Hi, I see your Ad on Yallamotor and I am interested in your car '+title;
if (Platform.isIOS) {
  await launch("https://wa.me/${phone}?text=${Uri.parse(message)}");
}

但它在 whatsapp 上显示错误,好像我们找不到您要查找的页面

Whatsapp 在 iOS 台设备上支持通​​用 URLs。

格式为:

https://wa.me/<number>?text=<urlencodedtext>

示例:

Use: https://wa.me/15551234567

Don't use: https://wa.me/+001-(555)1234567

可能您调用此 URL 时使用了错误的数字格式。

请参阅 iOS, Android 的 Whatsapp 常见问题解答。