浏览器能否在用户的'phone 上启动应用程序?

Can the browser start an application on the user's 'phone?

我正在实施服务器。没有客户端,只有用户的浏览器。

直到现在,我的一个功能总是重定向到 URL 并让用户的浏览器处理它。

但是,由于用户操作,现在有人要我 "launch an app on the user's smartphone"。

暂时忘记用户可能甚至没有安装该应用程序,这可能吗?

如果我返回一个带有一些 JavaScript 的网页,是否允许启动应用程序?这似乎有一些安全隐患,我怀疑它是否可以完成。

我依稀记得有一次从 PC 的串行端口读取网页,但我不得不通过 ActiveX 控件和 COM DLL 来完成这项工作。由于这需要 Internet Explorer & Windows,因此它不再是可接受的解决方案。我的问题与所有浏览器和 Android & iOs 有关(尽管也适用于 Windows、Linux & Mac 的解决方案会很好) .

我在这里问,寻求一个明确的答案。

我不确定您是在谈论默认的 Web 浏览器还是您创建的浏览器。

通常,当您想从浏览器启动应用程序时,您必须在清单中使用 intent 过滤器:

进行定义
<intent-filter>
  <data android:scheme="http" android:host="mysite.com"/>
  <action android:name="android.intent.action.MY_ACTION" />
</intent-filter>

因此,如果您谈论的是默认浏览器 ,您不能,但如果它是由您编码的浏览器,那么您可以像往常一样启动 activity意图。

编辑
我不确定这是否有效,但请尝试使您的链接看起来像这样并进行测试:

<a href="intent:#Intent;action=my_action;end">Link to my app</a>