如何格式化 webpageURL 以使 WatchKit 将用户切换到 Safari 中的网站?
How do I format webpageURL to get WatchKit to handoff user to a website in Safari?
我有一个应用程序会在 WatchKit 应用程序中生成少量信息。然后,我想将用户移交给另一台设备上的 Safari,以在网站上获取更多信息,并在 url 查询字符串中提供特定信息。我写了这个:
var QueryVar = SomeArray.description
var website = NSURL(string: "http://www.example.com/index.html?query="+QueryVar)
updateUserActivity("com.example.myapp.anactivity", userInfo: nil, webpageURL: website)
当我println(website)
出现nil
时,控制台警告说userInfo
和webpageURL
都不能是nil
。我尝试了多种不同的方法来将 URL 格式化为字符串,但似乎没有任何效果。
Swift 文档很好但缺少示例。
那里的大多数示例都不会理会 webpageURL
元素。
更糟糕的是,即使我让它不生成错误消息,我也不确定它是否有效,因为 IOS 模拟器不支持 webpageURL
。有没有人有一些工作代码,最好在实际手表上测试过,他们可以分享吗?
感谢 Schemetrical 指出我的错误想法
QueryVar.description
只会产生字符串化数组的元素。由于该变量包含方括号和逗号,因此它是 NSURL 类型的非法内容。我清理了代码并得到了一个可行的解决方案:
var URLwithQuery = "http://www.example.com?query="+QueryVar
var urlPath: String = URLwithQuery
var website: NSURL = NSURL(string: urlPath)!
updateUserActivity("com.example.myapp.anactivity", userInfo: nil, webpageURL: website)
我有一个应用程序会在 WatchKit 应用程序中生成少量信息。然后,我想将用户移交给另一台设备上的 Safari,以在网站上获取更多信息,并在 url 查询字符串中提供特定信息。我写了这个:
var QueryVar = SomeArray.description
var website = NSURL(string: "http://www.example.com/index.html?query="+QueryVar)
updateUserActivity("com.example.myapp.anactivity", userInfo: nil, webpageURL: website)
当我println(website)
出现nil
时,控制台警告说userInfo
和webpageURL
都不能是nil
。我尝试了多种不同的方法来将 URL 格式化为字符串,但似乎没有任何效果。
Swift 文档很好但缺少示例。
那里的大多数示例都不会理会 webpageURL
元素。
更糟糕的是,即使我让它不生成错误消息,我也不确定它是否有效,因为 IOS 模拟器不支持 webpageURL
。有没有人有一些工作代码,最好在实际手表上测试过,他们可以分享吗?
感谢 Schemetrical 指出我的错误想法
QueryVar.description
只会产生字符串化数组的元素。由于该变量包含方括号和逗号,因此它是 NSURL 类型的非法内容。我清理了代码并得到了一个可行的解决方案:
var URLwithQuery = "http://www.example.com?query="+QueryVar
var urlPath: String = URLwithQuery
var website: NSURL = NSURL(string: urlPath)!
updateUserActivity("com.example.myapp.anactivity", userInfo: nil, webpageURL: website)