2012-04-11 247 views
5

我敢肯定,必須有一種方法可以從我自己的應用程序啓動Spotify iphone應用程序。將播放列表推送到Spotify應用時,我看到了SMP應用(分享我的播放列表)做了非常類似的事情。從我的iPhone應用程序打開Spotify應用程序

我想這應該是通過使用類似:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"spotify://search:muse"]]; 

正如你所看到的,我希望能夠做一個特定的關鍵字Spotify Search的。問題是我真的不知道spotify網址方案,如果有這樣的東西可用。

我一直在尋找在網絡中,Spotify的開發者網站等,但沒有出現......

+0

嘗試spotify:搜索:muse(來自http://www.spotify.com/se/blog/archives/2008/01/14/linking-to-spotify/) – 2012-04-11 18:49:39

+0

太棒了!它的工作,但它沒有登陸Spotify搜索選項卡與結果。如果認爲應該有辦法告訴Spotify應用程序這樣做。你知道它可能嗎?順便說一句,謝謝 – 2012-04-12 09:41:13

回答

10

我遇到了在應用中同樣需要。我的解決方案是創建一個客戶端,點擊Spotify API返回搜索的XML或JSON。舉例來說,如果你想繆斯,你會打的API使用以下網址:

http://ws.spotify.com/search/1/artist?q=muse

從XML或JSON,你就可以到他們的URL方案中提取鏈接到特定的藝術家:

spotify:artist:12Chz98pHFMPJEknJQMWvI 

砍掉Spotify的:藝術家:部分和追加一條到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在未來決定改變這一切,它會在沒有警告的情況下破壞這個功能。

+3

spotify:// spotify:artist:12Chz98pHFMPJEknJQMWvI也可以工作。 – leolobato 2013-01-18 21:45:49

+0

你的應用名稱是什麼?只是好奇:) – 2013-07-03 15:14:12

+3

最新版本的Spotify似乎並沒有兌現完整的http://open.spotify.com網址。只是做spotify://藝術家:12Chz98pHFMPJEknJQMWvI似乎雖然工作。 – 2014-04-11 21:28:38

0

我做的快速修復是刪除被添加到原始uri的urlscheme。 所以你會直接調用uri。

這是 'Spotify的:藝術家:4gzpq5DPGxSnKTe4SA8HAU' 或 'Spotify的:軌道:1dNIEtp7AY3oDAKCGg2XkH'

UIApplication.shared.openURL( 「Spotify的:藝術家:4gzpq5DPGxSnKTe4SA8HAU」) 或 UIApplication.shared.openURL(「Spotify的:track:1dNIEtp7AY3oDAKCGg2XkH「)

此修復程序用於調用v6及更高版本中的舊urlscheme時的崩潰。

相關問題