美文网首页
IOS从外部跳到自己的APP客户端

IOS从外部跳到自己的APP客户端

作者: demoly | 来源:发表于2019-03-07 17:33 被阅读0次

项目需求

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

使用腾讯应用宝(参考其官方文档)

相关文章

网友评论

      本文标题:IOS从外部跳到自己的APP客户端

      本文链接:https://www.haomeiwen.com/subject/ngicpqtx.html