美文网首页
iOS开发:在UIWebView中点击广告跳转至淘宝APP详情页

iOS开发:在UIWebView中点击广告跳转至淘宝APP详情页

作者: First灬DKS | 来源:发表于2017-12-04 18:49 被阅读614次

    根据项目需求,要求在APP中打开一个UIWebView页面,页面中有一个广告,点击需要跳转至淘宝详情页面,没有安装淘宝则继续在UIWebView中打开详情;

    先配置工程,需要可以打开淘宝APP

    具体实现方法,需要在info.plist文件中,新增LSApplicationQueriesSchemesArray类型,然后在这个类型下面新增一个itemString类型,值设置为taobao,(发现在iOS8上面不需要配置也可以打开,iOS11就不行,可能是苹果为了安全性有所拦截)。配置效果如下图:

    image.png

    在UIWebView的代理方法中实现如下代码,方可打开淘宝APP

    - (BOOL)webView:(UIWebView *)awebView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
    {
        //跳转至淘宝
        NSString *urlStr = [NSString stringWithFormat:@"%@", request.URL];
        //如果需要请求的URL中包含`item.taobao.com`
        if ([urlStr rangeOfString:@"item.taobao.com"].location != NSNotFound) {
              //需要拼接跳转的URL
            NSString *itemId = [urlStr componentsSeparatedByString:@"?"].lastObject;
            NSString *url = [NSString stringWithFormat:@"taobao://item.taobao.com/item.htm?%@",itemId];
            //如果安装了淘宝APP
            if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:url]]) {
                [[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];
                //return NO表示在可以打开淘宝APP时,在自己APP中就不进入详情页面
                return NO;
            }
        }
        return YES;
    }
    

    为了方便测试,在此提供一个淘宝详情链接:(只可用于测试)

    https://item.taobao.com/item.htm?spm=0.7095261.0.0.6e491674SSs7xQ&id=562238292763
    

    希望对看到的你有所帮助!!!😁

    相关文章

      网友评论

          本文标题:iOS开发:在UIWebView中点击广告跳转至淘宝APP详情页

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