项目需求
App中有微信分享功能,分享到微信点击打开后是一个网页,网页上有一个"打开客户端"按钮,点击要求跳到自己的App
方案1
URL Scheme (首先想到)
- plist配置 Snip20190307_5.png
- 点击跳转
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"test://test.com"]];
总结:
支持大部分浏览器(微信除外,微信内置的浏览器给屏蔽了)、备忘录、短信、其他App等
方案2
Universal Links(通用链接),注意ios9之后出的
- 去开发者中心配置 image.png
- Xcode中配置 Snip20190307_8.png
- AppDelegate
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray *restorableObjects))restorationHandler{
if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
NSURL *webpageURL = userActivity.webpageURL;
if ([webpageURL.host isEqualToString:@"公司域名"] ) {
//打开对应页面
}else{
[[UIApplication sharedApplication]openURL:webpageURL];
}
}
}
- 创建json文件,文件名必须为"apple-app-site-association",并将其放到 .well-known目录和根目录下(都放一下)
{
"applinks": {
"apps": [],
"details": [
{
"appID": "teamId.bundleId",
"paths": [ "*" ]
}
]
}
}
注:AppID为teamId.bundleId(teamId可以从开发者中心查看)
- 使用备忘录测试
在备忘录中输入"https://公司域名/路径随便加"点击打开
方案3
使用腾讯应用宝(参考其官方文档)
网友评论