progressive-web-apps – PWA与Android应用/服务的互操作性?

前端之家收集整理的这篇文章主要介绍了progressive-web-apps – PWA与Android应用/服务的互操作性?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们知道我们的一些代码必须是本机代码,但它可以封装为 Android服务.我们希望将面向UI的部分创建为渐进式Web应用程序(PWA).

PWA是否有办法与设备上的本机应用程序进行交互(例如,使用参数调用它们并处理其他应用程序的回复/广播)?

PWA可以调用意图,被称为意图等吗?有什么可能性?

解决方法

发送共享意图(通过Web Share API)

Chrome Dev Summit 2016,团队宣布了Web Share API,其允许PWA响应于用户手势(例如,通过点击链接;不能是自动的)来调用设备的本机共享能力(例如,参见Android demo video). API是一个非常新的并且在原始试验之后.

以下示例click-handler调用Share Intent,它会调出本机应用程序选择器以与用户选择的应用程序共享数据.传递URL(可选)允许该应用提供到用户链接,例如查看详细信息.

function onClick() {
    navigator.share({
        title: document.title,text: "Hello World",url: window.location.href
    }).then(() => console.log('Successful share'))
    .catch(error => console.log('Error sharing:',error));
}

从Chrome发送Android Intents

可以使用intent URLs从PWA发送Android意图.该方法还需要用户手势来启动(例如,通过单击链接;不能是自动的).

意图语法是:

intent:
   HOST/URI-path // Optional host 
   #Intent; 
      package=[string]; 
      action=[string]; 
      category=[string]; 
      component=[string]; 
      scheme=[string]; 
   end;

例如,单击此锚标签将启动ZX条形码扫描仪应用程序:

<a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;end"> Take a QR code </a>

接收Android意图

我发现PWA从本机应用程序接收意图或广播消息时没有发现任何内容.我不认为这是可能的.

猜你在找的HTML相关文章