java - 是否可以通过另一个Java程序控制Spotify客户端?

标签 java client spotify

我想给我的机器人一个命令,例如在 Spotify 上播放(歌曲名称)。之后,机器人应该打开 Spotify 客户端并播放歌曲。机器人应该能够播放播放列表中的下一首或上一首歌曲并切换开始/停止播放。它可能与亚马逊 Echo 非常相似。 例如:https://youtu.be/WZ5Snilpj88 如果你不明白我的问题。 简短版本:我需要通过java程序控制Spotify桌面客户端。

如果有任何帮助,我将不胜感激。

最佳答案

控制 Spotify

是的,甚至有两种方式可以与 Spotify 进行通信。一侧是网络 API,另一边是本地 Spotilocal API。虽然 Web API 已记录并且可以在任何地方使用,但 Spotilocal API 只能与本地 Spotify 实例一起使用并且没有记录。

这两个 API 都适用于您的项目,因为您在同一台 PC 上启动 Spotify。

Spotify Web API

Spotify Web API 是一项 RESTful 服务,基址为 https://api.spotify.com。它有详细的文档记录,并且具有应用程序的大多数功能。这是与 Spotify 通信的唯一受支持的官方方式。

Spotilocal API

Spotilocal API 是本地托管的 RESTful 服务。 Spotify 桌面应用程序在后台启动一个小型 Web 服务器。端口通常不一致,可以从 4370 开始到 4380。整个 API 实际上适用于 Spotify Web 小部件,但也可用于本地操作。

摘要

我建议使用官方 Spotify Web API,根本不推荐 Spotilocal API。仅当无法授权时,您才应使用 Spotilocal API。

关于java - 是否可以通过另一个Java程序控制Spotify客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50221789/

相关文章:

java - 如何使用 guice 注入(inject)通用接口(interface)实现

windows - openerp gtk 客户端 6.1 - 表单选项卡标签

java - 如何在 android 中为 HttpsUrlConnection 禁用 SSLv3?

java - Netty 客户端到服务器消息

ios - Spotify EXC_BAD_EXE 在关闭 LoginViewController 后第二次点击登录按钮

java - 如果节点的元素等于最大元素,如何删除整个节点

java - Appengine 上传限制为 10000 个文件

ios - 将自定义对象保存到 NSUserDefaults - 无法设置编码器和解码器方法

android - Spotify Web API URL 请求语法

java - Android 包名称必须以 "com."开头?