2012-03-23 29 views
3

有什麼方法可以檢測Spotify是否處於離線模式?我目前正在開發一個應用程序,顯然取決於正在運行的互聯網連接。我希望能夠檢測是否有互聯網連接,如果沒有,則顯示錯誤消息。Spotify應用程序API:檢測離線模式

我已經找到了JavaScript的這似乎不工作的一些通用的解決方案,如:

var online = navigator.onLine; 

回答

0
http://developer.spotify.com/en/libspotify/docs/group__session.html 

檢查

sp_connectionstate 

爲枚舉值:

SP_CONNECTION_STATE_OFFLINE 

應該得到y你想要什麼。

+0

嗯,對不起,我不是在談論libspotify,而是Spotify應用程序API:http://developer.spotify.com/en/spotify-apps-api/overview/ – 2012-03-24 08:17:08

5

您可以通過訪問會話對象中的狀態來檢測客戶端是否脫機。

https://developer.spotify.com/technologies/apps/docs/a5a59ca068.html

你需要做的是使用觀察者聽狀態變化,並期待爲脫機狀態。

DISCONNECTED: 2 
DUMMY_USER: 4 
LOGGED_IN: 1 
LOGGED_OUT: 0 
OFFLINE: 3 

var sp = getSpotifyApi(1); 
var models = sp.require('sp://import/scripts/api/models'); 

models.session.observe(models.EVENT.STATECHANGED, function() { 
    console.log(models.session.state); 
}); 
+1

爲什麼不是這些事情現場還沒有在這個網站上?很舊的東西仍然存在,互動指南仍然展示sp.core的使用! – user507410 2012-05-24 17:32:23

+0

單擊上面的鏈接會強制我轉到http://developer.spotify.com/ – user507410 2012-05-24 17:32:51

+0

的主頁。這是更新的Session對象文檔鏈接。 https://developer.spotify.com/technologies/apps/docs/beta/a5a59ca068.html – 2012-05-25 00:51:35

0

對於應用程序API V1,你會做線沿線的東西...

require(['$api/models'], function(models) { 

    // add a listener to pick up any changes in on/offline state 
    models.session.addEventListener('change', changeOffline); 

    function changeOffline(){ 
    var online = models.session.online; // returns true/false 
    if(!online){ 
     // show offline message etc... 
    } else { 
     // hide offline message etc... 
    } 
    } 
}); 

https://developer.spotify.com/docs/apps/api/1.0/models-session.html