【发布时间】:2016-06-29 19:10:40
【问题描述】:
我知道以前有人问过这个问题,我已经尝试了所有可以在这里、Apple 论坛和各种操作指南网站上找到的东西,但我仍然遗漏了一些东西,而且我束手无策。我希望有人能在某个地方发现错误。
我正在 iPhone 6S 上使用 XCode 7.3.1 和 iOS 9.3.2。
会员中心应用 ID ID:com.hotelplanner.hotelplanner
App ID 有 Assoc。已启用域
使用 Assoc 开发供应配置文件。已启用域 iOS 团队配置文件:com.hotelplanner.hotelplanner
我在 XCode Build Settings 中选择的 Debug Provisioning Profile 与在会员中心启用了 App Domains 的配置文件相匹配。
Xcode 功能 关联域 应用链接:www.hotelplanner.com
Xcode 权利
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:www.hotelplanner.com</string>
</array>
</dict>
</plist>
apple-app-site-association的curl下载 泰坦:app nancysmithwp$ curl -v https://www.hotelplanner.com/.well-known/apple-app-site-association * 尝试 69.56.156.14... * 连接到 www.hotelplanner.com (69.56.156.14) 端口 443 (#0) * 使用 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 的 TLS 1.2 连接 * 服务器证书:*.hotelplanner.com * 服务器证书:Symantec Class 3 Secure Server CA - G4 * 服务器证书:VeriSign Class 3 Public Primary Certification Authority - G5
> GET /.well-known/apple-app-site-association HTTP/1.1
> Host: www.hotelplanner.com
> User-Agent: curl/7.43.0
> Accept: *
>
< HTTP/1.1 200 OK
< Content-Type: application/json
< Last-Modified: Wed, 29 Jun 2016 14:05:46 GMT
< Accept-Ranges: bytes
< ETag: "f35d6255fd2d11:0"
< Vary: Accept-Encoding,User-Agent
< Server: HOTELPLANNER.COM
< P3P: CP="NOI DSP COR LAW NID CUR ADMa OUR DELa IND PHY ONL UNI PUR COM NAV STA"
< Date: Wed, 29 Jun 2016 17:24:51 GMT
< Content-Length: 169
<
{
"applinks": {
"apps": [],
"details": [
{
"appID": "M57RZA2QX5.com.hotelplanner.hotelplanner",
"paths":[ "/Hotels" ]
}
]
}
}
我已将 iOS 部署目标设置为 9.0,因此不需要对其进行签名。
https://search.developer.apple.com/appsearch-validation-tool 的验证工具给出的 URL www.hotelplanner.com/Hotels/2446-in-Nassau-Bahamas.html 表示应用站点关联文件已通过。深层链接因“无法提取深层链接所需的信息”而失败。
便笺中的相同链接始终在 Safari 中打开。长按链接让我没有选择。
myAppDelegate 有 application:continueUserActivity:restorationHandler 实施。
-(BOOL) application:(UIApplication*) application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray * _Nullable))restorationHandler{
if (userActivity.activityType == NSUserActivityTypeBrowsingWeb){
NSLog(@"continueUserActivity");
}
return NO;
}
当我在我的设备上启动应用程序时,控制台中没有错误。
编辑添加:
我实施了 webcredentials 以查看是否可以获得更多见解,并且我在回调中收到一个错误,即 www.hotelplanner.com 不在我的权利中,但它在那里,并且设置了它的目标复选框。此外,如果我将第一个参数保留为 NULL,以便它使用我的权利文件中的域,我会收到错误“未提供域”。
【问题讨论】:
-
第一次安装(先删除再重新安装)时,Xcode 设备日志中是否出现任何错误?有这样的吗?
Sep 21 14:27:01 Derricks-iPhone swcd[2044] <Notice>: 2015-09-21 02:27:01.878907 PM [SWC] ### Rejecting URL 'https://examplecustomdomain.com/apple-app-site-association' for auth method 'NSURLAuthenticationMethodServerTrust': -6754/0xFFFFE59E kAuthenticationErr -
我在设备日志中看到的唯一内容是一周前的崩溃。安装应用程序时似乎没有打印任何内容。
-
嗯...我们可能会讨论不同的设备日志,因为如果您能在一周前找到任何东西,我会感到非常惊讶!这是我希望看到的:youtube.com/watch?v=rHQZy_WFdEs
-
感谢您提供该链接!我不知道那个窗口的下半部分。那里有很多。我卸载、重新启动并重新安装了该应用程序,但日志中没有任何与您的示例类似的内容。它确实显示了一些错误,尤其是 SecTrustEvaluate,但我明天必须重新运行几次,看看它们是否与我的应用程序相关。
-
是的......那些日志肯定飞得很快!似乎身份验证循环没有完全关闭,因此文件没有被请求或请求失败。要检查的另一件事是 .entitlements 文件已添加到您的构建目标中。有时这不是第一次