我正在开发一个使用Web视图的Android应用,该应用包含下面发布的代码。
函数shareArticle()用于根据对navigator.share(Google用来调用本机共享菜单的API)的支持来过滤浏览器,并相应地进行处理。但是,单击调用该函数的按钮时没有任何反应,至少会提示一个警报提示。
有什么办法可以使我可以使用本机Android共享屏幕共享内容吗?
export const shareArticle = () => {
return AndroidNativeShare("Title", "www.google.com", 'description');
};
async function AndroidNativeShare(Title, URL, Description) {
if (typeof navigator.share === 'undefined' || !navigator.share) {
alert('Your browser does not support Android Native Share, it\'s tested on chrome 63+');
} else if (window.location.protocol != 'https:') {
alert('Android Native Share support only on Https:// protocol');
} else {
if (typeof URL === 'undefined') {
URL = window.location.href;
}
if (typeof Title === 'undefined') {
Title = document.title;
}
if (typeof Description === 'undefined') {
Description = 'Share your thoughts about ' + Title;
}
const TitleConst = Title;
const URLConst = URL;
const DescriptionConst = Description;
try {
await navigator.share({title: TitleConst, text: DescriptionConst, url: URLConst});
} catch (error) {
console.log('Error sharing: ' + error);
return;
}
}
}
答案 0 :(得分:0)
检查navigator.share
是否存在是推荐的逻辑解决方案。不幸的是,这似乎在webviews中不起作用。在此处查看已提交的错误:https://bugs.chromium.org/p/chromium/issues/detail?id=765923