这是您应该使用的网址:
https://api.whatsapp.com/send?phone=15551234567&text=I'm%20interested%20in%20your%20car%20for%20sale
在 JavaScript 中,您必须对文本进行编码,例如
var url='https://api.whatsapp.com/send'
var text='text can contain this char: &'
window.open(url + '?phone=2211227373&text=' encodeURIComponent(text))
实际上我在 Flutter 中使用了这段代码:
onPressed: () async {
String appUrl;
String phone = '+989125272xxx'; // phone number to send the message to
String message = 'Merhaba,'; // message to send
if (Platform.isAndroid) {
appUrl = "whatsapp://send?phone=$phone&text=${Uri.parse(message)}"; // URL for Android devices
} else {
appUrl = "https://api.whatsapp.com/send?phone=$phone=${Uri.parse(message)}"; // URL for non-Android devices
}
// check if the URL can be launched
if (await canLaunchUrl(Uri.parse(appUrl))) {
// launch the URL
await launchUrl(Uri.parse(appUrl));
} else {
// throw an error if the URL cannot be launched
throw 'Could not launch $appUrl';
}
},
但这非常重要,您需要将 QUERY_ALL_PACKAGES 权限添加到应用程序的 AndroidManifest.xml 文件中,才能在 Android 12 或更高版本 设备上正常工作。此权限允许您的应用查询设备上所有已安装的软件包,包括 WhatsApp。
在 AndroidManifest.xml 文件的清单标记内添加以下行:
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
目前的做法:
<a href="https://wa.me/48123456789?text=Some%20text">Send message</a>
其中
48123456789
是完整的电话号码,text
参数指定文本。