Spotify Apps API:检测离线模式

Posted

技术标签:

【中文标题】Spotify Apps API:检测离线模式【英文标题】:Spotify Apps API: Detect offline mode 【发布时间】:2012-04-08 08:22:17 【问题描述】:

有什么方法可以检测 Spotify 是否处于离线模式?我目前正在开发一个明显依赖于工作互联网连接的应用程序。我希望能够检测是否有互联网连接,如果没有,则显示错误消息。

我找到了一些似乎不起作用的 javascript 通用解决方案,例如:

var online = navigator.onLine;

【问题讨论】:

【参考方案1】:

您可以通过访问会话对象中的状态来检测客户端是否离线。

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);
);

【讨论】:

为什么这些东西还没有出现在这些网站上?非常古老的东西仍然存在,交互指南仍在演示 sp.core 的使用! 点击上面的链接会强制我进入developer.spotify.com的主页 这是 Session 对象文档的更新链接。 developer.spotify.com/technologies/apps/docs/beta/… 现在我看到了。对不起我的错。【参考方案2】:

这是您在较新的 (2013+) 1.0 API 中执行此操作的方式:

 models.session.addEventListener('change:online',function(
    console.log('online =',models.session.online);
);

请参阅https://developer.spotify.com/docs/apps/api/1.0/api-models-session.html 了解更多信息。

【讨论】:

【参考方案3】:
http://developer.spotify.com/en/libspotify/docs/group__session.html

检查

sp_connectionstate 

对于枚举值:

SP_CONNECTION_STATE_OFFLINE

应该得到你想要的。

【讨论】:

啊,对不起,我说的不是 libspotify,而是 Spotify Apps API:developer.spotify.com/en/spotify-apps-api/overview【参考方案4】:

对于 Apps 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

【讨论】:

以上是关于Spotify Apps API:检测离线模式的主要内容,如果未能解决你的问题,请参考以下文章

Spotify Apps API:图书馆类不会返回用户播放列表

如何使用 Spotify Apps API 对象?

Spotify Apps Api - 创建播放列表的“分享”按钮

通过 Google Apps 脚本进行 Spotify API 授权

使用 Spotify Apps API 从给定播放列表中的特定曲目开始

Spotify Apps API:还有更多文档吗?