Universal Link未在iOS 9的应用程序中打开

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Universal Link未在iOS 9的应用程序中打开相关的知识,希望对你有一定的参考价值。

info.plist文件中创建了URL类型,其URL方案是http。创建了NSUserActivity类型。在'ViewController'类中创建了权利UIWebView。在AppDelegate方法中我实现了以下代码:

func application (application: UIApplication,willContinueUserActivityWithType userActivityType: String) -> Bool  {
    let sharedUserActivityType = "com.test.testApp"
    if (userActivityType == sharedUserActivityType) {
        return true
    }
    return false
}

@available(ios 8.0, *)

internal override func restoreUserActivityState(activity: NSUserActivity) {

    //don't forget to call super!

    if #available(iOS 8.0, *) {

        super.restoreUserActivityState(activity)

        let userInfo = activity.userInfo

    } else {
            // Fallback on earlier versions

    }
}

func application(application: UIApplication, continueUserActivity 
        userActivity: NSUserActivity, restorationHandler: ([AnyObject]?) -> 
        Void) -> Bool {

    if  userActivity == "com.test.testApp.view"
    {
        let mainListing = ViewController()

        restorationHandler([mainListing])
    }

    if let window = self.window 
    {
        window.rootViewController?.restoreUserActivityState(userActivity)
    }

    return true
}

func application(app: UIApplication, openURL url: NSURL, options: 
        [String : AnyObject]) -> Bool {

    return true
}
答案

您的apple-app-site-association JSON文件格式不正确 - 详细信息词典中缺少appID密钥,即

{ 
  "applinks": 
   { "apps":[], 
     "details": [
       {
         "appID": "teamId.com.test.testApp",  
         "paths":["*"] 
      } 
     ]
    } 
}

你可以使用Apple verification tool来验证这一点。

即使你在iOS9上也要注意,你仍然需要通过https提供apple-app-site-association文件。

以上是关于Universal Link未在iOS 9的应用程序中打开的主要内容,如果未能解决你的问题,请参考以下文章

跨平台应用开发进阶(三十四) :uni-app 应用 Universal Link 实现 iOS 微信分享

iOS - 好好利用Safari 之 通用链接 Universal Link

iOS防止在WKWebView中打开Universal Link( Prevent universal links from opening in WKWebView)

iOS13+ 通用链接(Universal Link)设置 解决APP接入微信支付和分享问题

趣谈 iOS Universal Link

iOS Universal Link问题