gpt4 book ai didi

java - 如果出现 404 错误则重定向链接

转载 作者:行者123 更新时间:2023-12-02 07:34:36 25 4
gpt4 key购买 nike

问题描述

我正在编写 Android 应用程序,当用户在 Android 中打开标准 Web 浏览器并导航到我的网页 (http://mywebpage.com) 并按下某个按钮(测试)时,我需要向我的应用程序添加一些功能Button)网页必须检测我的应用程序是否已安装在 Android 手机上。

我如何解决这个问题

我已经阅读了很多文章,并在这里提出了一些问题,我知道我无法做一些事情来让我的网页能够理解我的应用程序是否安装在手机上,这是我可以做的一件事 list 文件中的一些代码

<a href="my.special.scheme://other/parameters/here">

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="my.special.scheme" />
</intent-filter>

但这对我来说还不够,因为当用户按下我网站中的链接时,手机上没有安装应用程序,它会给出 404 错误,指出没有这样的 URL my.special.scheme://other/parameters/here我想为此找到另一种解决方案,这是我的想法。

问题的解决方案

当用户按下链接 <a href="my.special.scheme://other/parameters/here"> 时,如何从我的网站抛出一些异常并且显示404错误。我的意思是,我可以进行一些 AJAX 或 JAVA 脚本调用,以确定该 url 引用的是无效链接,并在这种情况下重定向到另一个链接。

问题2的解决方案

我像这样使用 Intent 过滤器

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="http" android:host="commonsware.com" android:path="LaunchApp"/>
</intent-filter>

并在网页上放置一个链接,如下所示

<a href="commonsware.com/LaunchApp">Start App</a>.

问题

当真实 URL 不存在或给出 404 错误时,如何重定向到我指定的 URL。请给我提供一个例子,因为我不擅长 AJAX 和 JAVA 脚本编码

最佳答案

根据 Diane Hackborn here 的回答,我做了类似的事情。 :

Please don't use a scheme unless it is one that you have registered. Schemes are global to the universe, and since you will be putting this out in the universe via your web page you want to follow the rules for them.

Another approach you can take is to just create an Intent that you want to have launched, and print the result of Intent.toUri() to get the string to use in your link. (This should be an intent: URI.) Then you probably want to just make your own action following the standard naming conventions which that Intent will use. You can even use Intent.setPackage() to make sure that only your app can be launched from the link, if you want. (Do note you can't use Intent.setComponent() for this for security reasons.)

我构建了一个 Intent 来启动所需的 Activity ,然后按照描述,将 Intent 转换为 URI 并将其打印到标准输出。我在网页中使用了这个 URI(以 intent: 开头作为方案),如下所示:

<a href="intent:/...">Start App</a> .

如果安装了应用程序,这将启动 Activity ,否则它将启动 Play 商店应用程序,已显示应用程序的页面(如果在 Play 商店中找到)供用户下载和安装。

关于java - 如果出现 404 错误则重定向链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12430223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com