Firefox 不会按应有的方式触发点击链接的意图。因此,无法通过单击 Firefox 中的链接来启动他们的应用程序(这在 Chrome 和其他浏览器中是可能的)。
编辑:请记住,这是 2013 年的帖子。
所需的行为如下:在我的网站上,我有一个链接,单击该链接时应启动我的 Android 应用程序。如果未安装该应用程序,最好打开其在 Google Play 中的页面进行下载。
方法
我实现它的方式是使用以下形式的“意图 URI”:
intent://myhost.com/#Intent;scheme=myscheme;package=com.myapp;end
在应用程序中,我在清单中注册了一个意图过滤器并侦听匹配的意图。但是,当点击链接时,由浏览器触发这样的意图,以便我的应用程序可以启动。
我已经在各种浏览器上测试过这种方法,并且它适用于大多数浏览器。Firefox 除外。在其他浏览器中,我的应用程序要么启动,要么加载它在 Google Play 中的页面(以防它未安装在设备上)。
带有“intent URI”的方法是谷歌推荐的方法。它在 Chrome 和其他一些浏览器上完美运行。还有其他方法。我已经阅读了许多关于可能性的主题和文章。主要替代方案是:
替代方法
- 使用自定义方案,例如
myscheme://mywebsite.com
- 使用常规的 http 链接,例如
http://mywebsite.com
不推荐备选方案 1 有两个原因: - 我不拥有这样的方案,它在全球范围内不存在,这是错误的。谷歌也在使用market://...
启动 Google Play 应用程序,但他们承认这是错误的,应该改变。- 如果我的应用程序当前没有安装,它将不会启动,并且大多数浏览器都会显示错误页面,这显然是不可取的。
备选方案 2 不适用于大多数浏览器,并且似乎已被弃用,取而代之的是“intent URI”方法。
特别是火狐
仅适用于自定义方案(替代方案 1)。如果是常规的 http 链接(备选方案 2),它只会加载链接并显示网站。在推荐的“intent URI”方法的情况下,它什么也不做。实际上,它会显示一个对话框,询问您是否要启动该应用程序,但是当您单击“是”时,什么也没有发生。因此,Firefox 似乎可以识别“ intent://...
”之类的链接,但不能正确处理它们。
问:从 Firefox 中的链接启动应用程序的推荐方法是什么?为什么 Firefox 不支持“intent URI”方法?
相关链接: https ://developers.google.com/chrome/mobile/docs/intents https://stackoverflow.com/a/3472228/1045941(请记住,该线程很旧)