我很确定必须有一种方法可以从我自己的应用程序启动spotify iphone应用程序。我已经看到SMP应用程序(分享我的播放列表)在将播放列表推入Spotify应用程序时做了类似的事情。
我想应该使用类似的东西:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"spotify://search:muse"]];
如您所见,我希望能够对特定关键字进行spotify搜索。问题是我真的不知道spotify网址方案,如果有这样的东西可用。
我一直在网上搜索,在spotify开发者网站等搜索,但没有任何结果......
答案 0 :(得分:12)
我在应用中遇到了类似的需求。我的解决方案是创建一个命中Spotify API的客户端,以返回搜索的XML或JSON。例如,如果你想要Muse,你可以使用以下URL点击API:
http://ws.spotify.com/search/1/artist?q=muse
从XML或JSON中,您将能够在其URL方案中提取指向特定艺术家的链接:
spotify:artist:12Chz98pHFMPJEknJQMWvI
切掉spotify:artist:part并将其附加到Spotify艺术家链接:
http://open.spotify.com/artist/12Chz98pHFMPJEknJQMWvI
然后,使用Spotify URL方案和UIApplication,您可以将Spotify应用程序打开到该特定艺术家的页面:
[[UIApplication sharedApplication] openURL:
[NSURL URLWithString:
@"spotify://http://open.spotify.com/artist/12Chz98pHFMPJEknJQMWvI"]];
注意,使用URL方案访问另一个应用程序的功能通常没有文档记录,可能是一个脆弱的努力。如果将来Spotify决定改变这一点,它将在没有警告的情况下破坏此功能。
答案 1 :(得分:1)
我做的快速修复是删除添加到原始uri的urlscheme。 所以你会直接打电话给uri。
这是'spotify:artist:4gzpq5DPGxSnKTe4SA8HAU'或'spotify:track:1dNIEtp7AY3oDAKCGg2XkH'
UIApplication.shared.openURL( “Spotify的:艺术家:4gzpq5DPGxSnKTe4SA8HAU”) 要么 UIApplication.shared.openURL( “Spotify的:轨道:1dNIEtp7AY3oDAKCGg2XkH”)
此修复是针对从v6及更高版本调用旧urlscheme时发生的崩溃。