怎么从前端页面直接跳到 app 或者 appstore?

2014-08-05 15:57:51 +08:00
 frontman
我是做前端的,ios开发的app里的歌曲分享到微信后有个按钮 点击按钮可以直接跳到app 如果没有app直接跳到appstore 我这边应该怎么写?
5045 次点击
所在节点    Apple
10 条回复
frontman
2014-08-05 16:06:09 +08:00
??
NemoAlex
2014-08-05 16:10:16 +08:00
老的解决方案是:
App 可以向系统注册私有协议,你写个链接 <a href="foo://xxx"></> 类似这样的
JavaScript 绑个点击事件,用户点击以后延迟1秒跳转到 store 页面
于是如果用户有装应用的话就会跳转到应用,没有装的话1秒以后会去 store
不过微信的浏览器貌似会拦截去 store 的链接,这个要你自己研究下了
frontman
2014-08-05 16:17:58 +08:00
@NemoAlex soga 3q
frontman
2014-08-05 17:48:48 +08:00
额 怎么跳呢
frontman
2014-08-05 18:19:21 +08:00
查了好久 原因是iso的新版微信阻止在微信内部打开第三方app,所以还是用之前的链接,但是打开的时候需要一些操作 ,这里有个小哥描述的很清楚 http://dearb.me/archive/2013-11-07/ios7-weixin-unsupport-redirect-to-app-store/
yudun1989
2014-08-05 18:32:32 +08:00
iframe
hoogle
2014-08-05 21:17:52 +08:00
微信不能 转到Safari用scheme
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();
});
}
frontman
2014-08-07 14:23:23 +08:00
@siteshen 真心感觉好高端啊
siteshen
2014-08-07 22:28:36 +08:00
@frontman 总之是个坑就得有人去填。这是我们应用上线之后才发现得,零散的探索了一两天才搞出来的这个方案。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/126240

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX