0

我们有 chrome 和 FF 扩展,可与本机消息传递应用程序一起使用。最近我们开发了边缘扩展和一个以相同方式工作的 UWP 应用程序。现在,如果用户想要使用任何 chrome/FF/Edge 浏览器,他们必须安装两个独立的本地消息传递应用程序。我的问题是,Chrome/FF 扩展是否可以与 Windows UWP 应用程序对话?

4

1 回答 1

3

抱歉不行。在 Windows 上,Chrome 和 Firefox 都使用注册表来定位本机应用程序清单,并且禁止 Windows Store 应用程序写入注册表。(参考:准备打包应用程序(桌面桥)

如果发生了一些变化(商店应用程序获得了更改注册表的能力,或者 Chrome 和 Firefox 引入了另一种查找清单的方法),那么它可能是可能的。虽然可能不是直接通过 UWP 应用程序。UWP 应用似乎支持标准输入和输出,但它们的运行方式阻止了对它的访问。但是,可以创建一个中间 Win32 应用程序,该应用程序可以AppService通过 stdio 与 UWP 应用程序和浏览器扩展程序进行通信。

事后思考:据报道,由于 API 问题,Enpass Password Manager (win32) 被移植到 Windows 应用商店,并且具有 Chrome 和 Firefox 的浏览器扩展。可能值得问问他们是如何做到的。我做了一些更多的挖掘,并弄清楚了。localhost环回、自定义 url 方案、网络套接字和浏览器验证是他们的工作方式。不是一个理想的解决方案,但它似乎工作。

于 2018-01-10T05:58:32.553 回答