包括可点击的 link 作为来自 Whatsapp API 的消息的一部分
Include clickable link as part of message from Whatsapp API
我正在尝试通过 iOS (Swift) 和 Android (Java) 应用程序。我使用 url 方案如下:
whatsapp://send?text=$MY_URL_ENCODED_MESSAGE
邮件内容正确填充,但发送邮件时 link 未呈现为可点击 link。
我试过使用 markdown、HTML 并删除 URL 编码并只发送 link - 似乎没有任何效果。
我了解到 WhatsApp 可能有一些安全功能,当收件人不在我的联系人列表中但我发送消息的所有人都在时,WhatsApp 可能会阻止点击 links。
感谢任何帮助。
答案是将消息内容与链接分开。
基于看起来像这样的数据结构:
data = {
message = 'Search here'
link = 'https://www.google.com'
}
您的解决方案将如下所示:
iOS
url: "whatsapp://send?text=" + data.message.uri_encoded + data.link
使用以下命令在设备上打开 WhatsApp:
let url = URL(string: data["url"] as! String)
if UIApplication.shared.canOpenURL(url!) {
UIApplication.shared.open(url!, options: [:], completionHandler: nil)
} else {
# user does not have WhatsApp installed
}
Android
url: "https://api.whatsapp.com/send?text=" + data.message.uri_encoded + data.link
packageName: 'com.whatsapp'
使用以下命令在设备上打开 WhatsApp:
try {
String packageName = obj.getJSONObject("data").getString("packageName");
PackageManager pm = context.getPackageManager();
pm.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
context.startActivity(intent);
} catch (PackageManager.NameNotFoundException e) {
// user does not have WhatsApp installed
}
我正在尝试通过 iOS (Swift) 和 Android (Java) 应用程序。我使用 url 方案如下:
whatsapp://send?text=$MY_URL_ENCODED_MESSAGE
邮件内容正确填充,但发送邮件时 link 未呈现为可点击 link。
我试过使用 markdown、HTML 并删除 URL 编码并只发送 link - 似乎没有任何效果。
我了解到 WhatsApp 可能有一些安全功能,当收件人不在我的联系人列表中但我发送消息的所有人都在时,WhatsApp 可能会阻止点击 links。
感谢任何帮助。
答案是将消息内容与链接分开。
基于看起来像这样的数据结构:
data = {
message = 'Search here'
link = 'https://www.google.com'
}
您的解决方案将如下所示:
iOS
url: "whatsapp://send?text=" + data.message.uri_encoded + data.link
使用以下命令在设备上打开 WhatsApp:
let url = URL(string: data["url"] as! String)
if UIApplication.shared.canOpenURL(url!) {
UIApplication.shared.open(url!, options: [:], completionHandler: nil)
} else {
# user does not have WhatsApp installed
}
Android
url: "https://api.whatsapp.com/send?text=" + data.message.uri_encoded + data.link
packageName: 'com.whatsapp'
使用以下命令在设备上打开 WhatsApp:
try {
String packageName = obj.getJSONObject("data").getString("packageName");
PackageManager pm = context.getPackageManager();
pm.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
context.startActivity(intent);
} catch (PackageManager.NameNotFoundException e) {
// user does not have WhatsApp installed
}