美文网首页
iOS 跳转淘宝天猫APP

iOS 跳转淘宝天猫APP

作者: rockyMJ | 来源:发表于2018-10-31 19:10 被阅读303次

    转自原文链接:https://segmentfault.com/a/1190000012568326

    记录学习:
    info.plist添加 LSApplicationQueriesSchemes 字段


    image.png
        需要跳转的按钮点击事件:
        func copyStrKey(_ sender: UIButton) {
    
            let pboard = UIPasteboard.general
            pboard.string = self.productModel["search_key"].stringValue
           
            var titleStr = ""
            var jumpStr = ""
    
            if sender.tag == 0 {
                titleStr = "关键词复制成功,是否跳转到手机淘宝APP?"
                jumpStr = ("taobao://s.taobao.com/search?q=" + self.productModel["search_key"].stringValue).addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!
            } else if sender.tag == 1 {
                titleStr = "淘口令复制成功,是否跳转到手机淘宝APP?"
                jumpStr = "taobao://item.taobao.com/item.htm"
            }
           
            let alertCtr = UIAlertController.init(title: titleStr, message: nil, preferredStyle: UIAlertControllerStyle.alert)
            alertCtr.addAction(UIAlertAction.init(title: "取消", style: UIAlertActionStyle.cancel, handler: nil))
            alertCtr.addAction(UIAlertAction.init(title: "确定", style: UIAlertActionStyle.default, handler: { (action) in
               
                if let url = URL.init(string: jumpStr) {
                   
                    if UIApplication.shared.canOpenURL(url) == true {
                        UIApplication.shared.openURL(url)
                    } else {
                       
                        let alertC = UIAlertController.init(title: "您未安装手机淘宝APP,是否前往AppStore下载安装?", message: nil, preferredStyle: UIAlertControllerStyle.alert)
                       
                        alertC.addAction(UIAlertAction.init(title: "取消", style: UIAlertActionStyle.cancel, handler: nil))
                        alertC.addAction(UIAlertAction.init(title: "确定", style: UIAlertActionStyle.default, handler: { (action: UIAlertAction) in
                           
                            let AppStoreVC = UIViewController.init()
                            AppStoreVC.modalTransitionStyle = UIModalTransitionStyle.coverVertical
                           
                            let webView = UIWebView.init(frame: AppStoreVC.view.bounds)
                            let request = NSURLRequest.init(url: URL.init(string: "itms-apps://itunes.apple.com/cn/app/tao-bao-sui-shi-sui-xiang/id387682726?mt=8")!) //AppStore手机淘宝地址
                            webView.loadRequest(request as URLRequest)
                            AppStoreVC.view.addSubview(webView)
                           
                            self.present(AppStoreVC, animated: true, completion: {
                                AppStoreVC.dismiss(animated: true, completion: nil)
                            })
                        }))
                        self.present(alertC, animated: true, completion: nil)
                       
                    }
                }
            }))
            self.present(alertCtr, animated: true, completion: nil)
        }
    

    说明:

    URL 不能包含 ASCII 字符集中, 不是必须这样的字符进行转义的字符。
    使用 stringByAddingPercentEncodingWithAllowedCharacters
    字符集 URLQueryAllowedCharacterSet

    跳转天猫:

    1、首页
    tmall://tmallclient/
    2、详情(需要id)
    tmall://page.tm/itemDetail?id=556107550107
    3、搜索列表
    tmall://page.tm/search?q=1234

    跳转京东:
    openApp.jdMobile://

    相关文档:
    https://www.china-7.net/view-486463.html

    相关文章

      网友评论

          本文标题:iOS 跳转淘宝天猫APP

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