实现微信浏览器内打开App Store链接
2023-09-14 08:57:08 时间
http://www.ildsea.com/1781.html
微信浏览器是不支持打开App Store 页面的,不知道微信为什么这么做。比如你页面写 <a href=”http://itunes.apple.com/us/app/id399608199″>download</a> ,在微信浏览器点击链接是没有反应的,但是如果是其他的链接地址,比如百度那就没有问题
后来我发现如果你在微信官方后台编辑图文,把原文链接写为:http://itunes.apple.com/us/app/id399608199 ,那就可以打开了,发现微信页面的“查看原文”是一个function,如下
1 |
function viewSource() { |
2 |
var redirectUrl = sourceurl.indexOf('://') < 0 ? 'http://' + sourceurl : sourceurl; |
3 |
//redirectUrl = http://itunes.apple.com/us/app/id399608199 |
4 |
redirectUrl = 'http://' + location.host + '/mp/redirect?url=' + encodeURIComponent(sourceurl); |
5 |
//此处是关键,redirectUrl = http://mp.weixin.qq.com/mp/redirect?url=http%3A%2F%2Fitunes.apple.com%2Fus%2Fapp%2Fid399608199%23rd |
6 |
var opt = { |
7 |
url: '/mp/advertisement_report' + location.search + '&report_type=3&action_type=0&url=' + encodeURIComponent(sourceurl) + '&uin=' + uin + '&key=' + key + '&__biz=' + biz + '&r=' + Math.random(), |
8 |
type: 'GET', |
9 |
async: !1 |
10 |
}; |
11 |
return tid ? opt.success = function (res) { |
12 |
try { |
13 |
res = eval('(' + res + ')'); |
14 |
} catch (e) { |
15 |
res = { |
16 |
}; |
17 |
} |
18 |
res && res.ret == 0 ? location.href = redirectUrl : viewSource(); |
19 |
} |
20 |
: (opt.timeout = 2000, opt.complete = function () { |
21 |
location.href = redirectUrl; |
22 |
}), |
23 |
ajax(opt), |
24 |
!1; |
25 |
} |
真正的url是:http://mp.weixin.qq.com/mp/redirect?url=http%3A%2F%2Fitunes.apple.com%2Fus%2Fapp%2Fid399608199%23rd
看来微信允许打开mp.weixin.qq.com这个host下的网页,然后用js再打开真正的页面。
现在简单了,将页面的代码写为:<a href=”http://mp.weixin.qq.com/mp/redirect?url=http%3A%2F%2Fitunes.apple.com%2Fus%2Fapp%2Fid399608199%23rd”>download</a>,在微信浏览器内可以打开app store的地址了。
相关文章
- 记事本APP哪个好用 这款便签记事本让你随时随地想记就记
- Windows Store App 全球化 资源匹配规则
- Hybrid App技术批量制作APP应用与跨平台解决方案
- 自己整理的ios app实现自动升级
- vue开发 - 将方法绑定到window对象,给app端调用
- 【刷题】面筋-测开-APP测试需要考虑的点都有哪些?
- uni-app:微信小程序:预加载字体文件(hbuilderx 3.7.3)
- 发现一个nginx LUA开发Web App的框架
- [APP] Android 开发笔记 004-Android常用基本控件使用说明
- 如何让自己的广播只让指定的 app 接收?
- [AngularJS] Write a simple Redux store in AngularJS app
- Instant Run 的操作影响到了代码,导致Android App启动闪退的问题
- How does model reference pass from app view to master view
- Angular应用初始化APP_INITIALIZER
- ios xcode app被杀死了怎样打印调试 调试手动点开的APP 被系统唤醒的app的调试
- iOS app store无法提交以供审核 App隐私
- Android 11.0 系统设置 app详情页默认关闭流量数据的开关
- Android 12.0 第三方无源码app根据包名默认横屏显示
- android 8.1 9.0 10.0 app安装黑名单(限制app安装)
- Android app内存优化方案
- 接了几个APP逆向私活,一单一个W
- 〖Python APP 自动化测试实战篇⑨〗- 实战 - App自动化实战操作
- app逆向用到的一些工具和命令
- 【Android 逆向】获取安装在手机中的应用的 APK 包 ( 进入 adb shell | 获取 root 权限 | 进入 /data/app/ 目录 | 拷贝 base.apk 到外置存储 )
- 使用Reveal来查看别人的APP界面+白苹果不刷机解决方式
- Progressive Web App是一个利用现代浏览器的能力来达到类似APP的用户体验的技术——不就是chrome OS吗?