实现静态二维码跳转多个网页

本文介绍了一种当手机未安装特定应用时,通过扫描二维码能够跳转到应用下载页面的方法。利用一个需要重定向的网址结合XMLHttpRequest进行本地端口请求,并通过C++编写的服务端来实现跨域访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天晚上想到了一个问题,二维码是静态的,如果扫码之后手机上根本没安装这个应用,scheme完全不可行的情况下如何才能跳转到下载页呢?然而对于Android - Java上层的不是很了解,对于一个一直折腾在Native层的人来说,叫天(Java)天不灵,叫地(Linux)地不应,着实是憋气。

后来想到了一个小方法,二维码里面仍然只有一个网址,但这是一个需要重定向的网址(redirect)。

这个网页上使用XMLHttpRequest对本地端口发起GET请求并注册回调函数检查readyState和status,只有readyState是4的时候判断status,如果为200则表明本地服务器正确应答,否则(一般为0)表明本地服务器未成功应答。

本地服务端使用 C++ 编写,报文与HTTP标准报文差不多,但是需要加一句Access-Control-Allow-Origin: *,其中星号应该换为跨域访问的来源站点。

另一个需要注意的地方是var req=new XMLHttpRequest(); ....... req.send(null) 如果没有这一句服务端不能接收到请求,req将因为超时而失败返回. 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值