Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
说明android应用程序是使用javascript还是jquery安装的_Javascript_Android_Jquery - Fatal编程技术网

说明android应用程序是使用javascript还是jquery安装的

说明android应用程序是使用javascript还是jquery安装的,javascript,android,jquery,Javascript,Android,Jquery,我有一个android应用程序,也可以通过网络浏览器访问。我需要放一个横幅,让用户安装android应用程序。我如何使用javascript或jquery判断(如果用户通过web浏览器进入应用程序)他的手机上是否已经安装了android应用程序? 我只想做的是:如果用户点击横幅并且应用程序已经安装,打开android应用程序。否则,请将用户重定向到playstore,让他安装应用程序。假设您的应用程序已上载到Apple AppStore和Google Play stores 您需要: 在网页中

我有一个android应用程序,也可以通过网络浏览器访问。我需要放一个横幅,让用户安装android应用程序。我如何使用javascript或jquery判断(如果用户通过web浏览器进入应用程序)他的手机上是否已经安装了android应用程序?
我只想做的是:如果用户点击横幅并且应用程序已经安装,打开android应用程序。否则,请将用户重定向到playstore,让他安装应用程序。

假设您的应用程序已上载到Apple AppStore和Google Play stores

您需要:

  • 在网页中嗅探从访问页面的设备安装的操作系统
    • 找到how=>
  • 启用深度链接以侦听来自移动本机应用程序的完全相同的链接
    • 对于Android,您需要注册您的主要活动或任何其他活动来收听这些链接
    • 对于iOS-老实说,不知道,环顾四周或寻找第三方服务
  • Google Play与深度链接的代码。深度链接与您希望在谷歌搜索(或任何其他搜索引擎)中缓存/索引的网站页面相同

    指向索引/使用的示例链接=>

  • 对iOS和桌面/Windows Mobile重复上述步骤

上述功能的另一个优点是,完整的应用程序索引没有谷歌的蹩脚应用程序索引借口(min sdk不超过17,Chrome适用于Android等限制)。

无法检测应用程序是否使用Javascript安装

但是,您可以获得所描述的行为,甚至不需要任何javascript:

  • 在您拥有的web服务器上为您的应用选择一个URL,并将横幅链接到该URL
  • 通过在应用程序清单中指定此web URL,将其设置为应用程序处理的深度链接。它应该打开主要活动
  • 在web服务器上,将此URL配置为重定向到应用程序的Play Store URL。可选:如果您的应用程序也在iOS上,您可以检测iOS浏览器并显示其他内容

如果安装了应用程序,它将处理URL并打开,否则浏览器将跟随链接和重定向,并且Play Store应用程序将打开以处理应用程序的Play Store URL。

您无法访问本地系统以查看应用程序是否安装了javascript。
// below snipplet need to be for Android devices only
// i.e. need to sniff and have if/else validation for Android, iOS, desktop and so on
// will call with 25 mills delay in case deep link fails, i.e. no installed app
setTimeout(function () { window.location = "https://play.google.com/details?id=com.foo.myapp"; }, 25);

// try to load the deep link URL
window.location = "http://my_website.com/results";