【发布时间】:2020-05-07 11:09:50
【问题描述】:
我正在尝试为 KaiOS 开发一个应用程序,我想在其中与 WhatsApp 共享 短信。
我试过 deep-links 喜欢:
app://whatsapp/sendwhatsapp://send
两者都不起作用。
有人知道如何与 WhatsApp 分享内容吗?
【问题讨论】:
标签: deep-linking whatsapp kaios
我正在尝试为 KaiOS 开发一个应用程序,我想在其中与 WhatsApp 共享 短信。
我试过 deep-links 喜欢:
app://whatsapp/sendwhatsapp://send两者都不起作用。
有人知道如何与 WhatsApp 分享内容吗?
【问题讨论】:
标签: deep-linking whatsapp kaios
您需要使用Web Activities API。
WhatsApp 暴露了两个主要活动:
shareview查看 WhatsApp 的manifest.webapp:
"activities": {
"share": {
"href": "/notification.html",
"filters": {
"type": [
"video/*",
"image/*",
"text/vcard",
"text/plain"
]
}
},
"view": {
"href": "/notification.html",
"filters": {
"type": "url",
"url": {
"required": true,
"pattern": "^https://(?:chat\\.whatsapp\\.com/(?:invite/)?[0-9A-Za-z]+|wa\\.me/[0-9]+(?:\\?text=.*)?)$",
"patternFlags": "i",
"regexp": "^https://(?:chat\\.whatsapp\\.com/(?:invite/)?[0-9A-Za-z]+|wa\\.me/[0-9]+(?:\\?text=.*)?)$"
}
}
},
}
要使用 WhatsApp 分享短信,您可以使用预定义的活动名称来实例化 MozActivity。
这样的事情应该可以在应用程序或网络环境中工作。
var pick = new MozActivity({
name: "share",
data: {
type: "text/plain",
blobs: [ "This is a message to share via WhatsApp" ]
}
});
【讨论】:
感谢 KaiOS 和 Whatsapp 团队,我终于成功地发送了一条短信。这是这样做的方法:
const phoneNumber = "0123456789"
const urlEncodedMessage = "SentFromKaios"
const sendTextMessageActivity = new MozActivity({
name: "view",
data: {
type: "url",
url: `https://wa.me/${phoneNumber}?text=${urlEncodedMessage}`
}
})
【讨论】:
whatsapp: 这样的 URI 方案与本地 Whatsapp 客户端进行通信。