微信中通过页面(H5)直接打开本地app的解决方案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微信中通过页⾯(H5)直接打开本地app的解决⽅案
简述
微信中通过页⾯直接打开app分为安卓版和IOS版,两个的实现⽅式是完全不同的。
安卓版实现:使⽤腾讯的应⽤宝,只要配置了“微下载”之后,打开链接腾讯会帮你判断本地是否已经安装了app,如果本地安装就直接打开,没有安装的话就是腾讯微下载的页⾯进⾏app下载,当然微下载的页⾯腾讯提供了⼏个模板,可以⾃⼰选择和修改。
IOS实现:ios像直接点击链接打开本地app就难了,有两种⽅式可供我们选择:
1.腾讯深度合作的公司,微信可以帮你打开app;
2.使⽤IOS9+的新功能“Universal Links”(通⽤链接);
很显然,第⼆种⽅式更适合我们普通的公司。
效果展⽰
实现步骤
1.配置https(必须是https)⽹站⽀持;
{
"applinks": {
"apps": [],
"details": [
{
"appID": "*****.com.gangguwang.yewugo",
"paths": [ "/app/*" ]
}
]
}
}
其中appId是你的Prefix + ID,如图:
2.配置苹果证书,开启“Associated Domains”,如下图:
3.配置你的App的Universal Links(通⽤链接)
如果你是普通的ios项⽬的的话,配置如下:项⽬ targets->Capabilities->Associated Domains,如图填写你的链接域名
域名的格式必须为:applinks:你的域名(ex:applinks:),可以配置多个;
如果你是Xamarin项⽬的话,需要选择Entitlements.plist配置关联域,如图:
这样配置完之后,打包即可测试你的应⽤咯。
扩展知识(关于Xamarin)
如果你要处理链接打开本地app并跳转到相应的详情页的话,需要这样实现:
1.在你的xxx.iOS项⽬打开“AppDelegate.cs”⽂件;
2.重写⽅法,代码如下:
public override bool ContinueUserActivity(UIApplication application, NSUserActivity userActivity, UIApplicationRestorationHandler completionHandler) {
if (userActivity.ActivityType == NSUserActivityType.BrowsingWeb)
{
string url = userActivity.WebPageUrl.ToString(); //全地址
if (!string.IsNullOrEmpty(url))
{
//你的业务处理
}
}
return true;
}
注意事项
1.配置的⽹站必须是https,不能为http;
3.[重要]配置玩证书之后需要更新证书,才能内部打包和提测上传成功;
4.通⽤链接可被屏蔽,点击右上⾓配置的链接之后,通⽤链接就失效了,解决⽅案详见:。
如果觉得本⽂对你有帮助,请点击右下⾓“推荐”按钮,谢谢!。