我正在尝试创建一个URL方案,以这种方式打开Tweetbot应用程序。
var urlComponents = NSURLComponents()
urlComponents.scheme = "tweetbot"
urlComponents.path = "BalestraPatrick/user_profile/\(user)"
我的预期结果是:
tweetbot://BalestraPatrick/user_profile/username
结果是:tweetbot:BalestraPatrick/user_profile/username
//不会自动添加。如果我尝试将字符添加到方案或路径中,则URL将变为nil。
有任何解决方法吗?
答案 0 :(得分:3)
如果您未指定//
,则会显示host
。我认为理想的解决方案是:
let user = "test"
var urlComponents = NSURLComponents()
urlComponents.scheme = "tweetbot"
urlComponents.host = "BalestraPatrick"
urlComponents.path = "/user_profile/\(user)"
print("URL: \(urlComponents.string!)") // URL: tweetbot://BalestraPatrick/user_profile/test
答案 1 :(得分:0)
根据http://tapbots.net/tweetbot3/support/url-schemes/,tweetbot网址方案的格式为tweetbot://<screenname>/<other_stuff>
。
因此tweetbot
是网址的计划,<screenname>
是网址的主机,/<other_stuff>
是网址的路径和查询。< / p>
所以,Sulthan的答案中的代码是完全正确的(而不是hacky)。