1
frontman OP ??
|
2
NemoAlex 2014-08-05 16:10:16 +08:00
老的解决方案是:
App 可以向系统注册私有协议,你写个链接 <a href="foo://xxx"></> 类似这样的 JavaScript 绑个点击事件,用户点击以后延迟1秒跳转到 store 页面 于是如果用户有装应用的话就会跳转到应用,没有装的话1秒以后会去 store 不过微信的浏览器貌似会拦截去 store 的链接,这个要你自己研究下了 |
4
frontman OP 额 怎么跳呢
|
5
frontman OP 查了好久 原因是iso的新版微信阻止在微信内部打开第三方app,所以还是用之前的链接,但是打开的时候需要一些操作 ,这里有个小哥描述的很清楚 http://dearb.me/archive/2013-11-07/ios7-weixin-unsupport-redirect-to-app-store/
|
6
yudun1989 2014-08-05 18:32:32 +08:00
iframe
|
7
hoogle 2014-08-05 21:17:52 +08:00 via iPhone 1
微信不能 转到Safari用scheme
|
8
siteshen 2014-08-06 01:12:57 +08:00
上面的解决方案对iOS和比较Android手机够用了,我再补充一下网页在weibo客户端(系统Android 4.1.2版,怀疑其他老版本Weibo客户端也有此问题)遇到的坑:
1. window.location = "intent://story/33195#Intent;package=xxx;scheme=zbd;end;"; 该客户端中,直接跳转过去了,出现的是一个类似404的页面; 2. 该客户端中的UserAgent和默认浏览器的完全一样,没法判断是在微博客户端里的。 解决方案,最终检查header时发现refer字段里有m.weibo.cn字样,就用这个方案判断了。 source = $('body').data('source'); IS_WECHAT = /micromessenger/i.test(navigator.userAgent); IS_WEIBO_SOURCE = source && /weibo/i.test(source); IS_WEIBO_UA = /weibo/i.test(navigator.userAgent); IS_WEIBO = !IS_WECHAT && (IS_WEIBO_UA || IS_WEIBO_SOURCE); // 微信和微博多数“[在浏览器中打开]”显示在“右上角”,然后还设计了个箭头、囧 if (IS_WEIBO_SOURCE && !IS_WEIBO_UA) { $('.font-attention.browser-btn').text('右下角'); $('.tips-arrow').hide(); } if (IS_WEIBO || IS_WECHAT) { $('.browser-tips').show(); return $('.browser-tips .browser-tips-mask').on('click', function(e) { return $('.browser-tips').hide(); }); } |