Spotify App API 错误报告:播放器音量无法设置为值
Posted
技术标签:
【中文标题】Spotify App API 错误报告:播放器音量无法设置为值【英文标题】:Spotify App API Bug Report : Player volume cannot be set to a value 【发布时间】:2012-07-22 15:07:26 【问题描述】:几周前我开始使用 Spotify App API。
我想改变音量。这应该通过使用 Player 类的 volume 属性来完成,如documention 中所述:
volume 获取或设置当前音量级别为 0.0 和 1.0 之间的浮点数。
不幸的是,这个volume属性只能用来获取当前的音量,不能用来设置音量。
所以我开始在网上搜索一些信息。我发现了两个关于堆栈溢出的相关帖子1 和2。
那么,我应该问与你可能问的其他两个人相同的问题。
好吧,我对 Spotify API 进行了更深入的研究,发现了一些有用的信息。我希望这篇文章对 Spotify 开发者有所帮助。
此外,*** 似乎是为 Spotify 发布错误报告的方式。
让我们开始我的 Spotify App API 调查。所有这些都是通过使用 Inspector 完成的。
volume 属性在 Player 类中定义。 Player 类在模型模块中定义。所以让我们看看模型,为此我们打开文件 models.js(检查器中的“脚本”选项卡,在下拉菜单中选择“models.js”)。我们首先找到这个(第 743 行):
* @property number volume Get or set the current volume level as a float between 0.0 and 1.0.
那么让我们看看这个 volume 属性(models.js 中的第 889-892 行):
volume:
get: sp.trackPlayer.getVolume,
set: sp.trackPlayer.setVolume
,
好的。所以现在我们可以使用 trackPlayer 中的 setVolume 方法来设置音量。 让我们更深入地看看 trackPlayer 里面有什么。为此,请在控制台中输入:
_getSpotifyModule("trackPlayer")
它返回一个包含很多函数的对象。这是一个小快照:
_getSpotifyModule("trackPlayer")
Object
...
getShuffle: function getShuffle() [native code]
getVolume: function getVolume() [native code]
playTrackFromContext: function playTrackFromContext() [native code]
...
setShuffle: function setShuffle() [native code]
skipToNextTrack: function skipToNextTrack() [native code]
...
你是否可以看到函数 getVolume 被定义了。但是函数 setVolume 不是。
所以这是我的结论:目前还不能使用 Player.volume 来设置音量,因为 setVolume 函数没有在 trackPlayer 中定义。
希望我的工作能帮助开发者解决这个问题。
在 [1] 中,IKendac 建议:
只有在您的应用启动正在发生的播放时,您才能更改音量
但事实证明这是错误的,我做了一个小应用程序来测试它:https://gist.github.com/3152875。
你也可以尝试在控制台执行如下代码,你会看到音量没有变化:
var sp = getSpotifyApi(1);
var models = sp.require('sp://import/scripts/api/models');
var views = sp.require('sp://import/scripts/api/views');
var player = models.player;
player.volume;
player.volume = 0.5;
player.volume;
[1]Change volume with spotify App API [2]https://***.com/questions/11230630/change-volume-in-a-spotify-app
【问题讨论】:
【参考方案1】:这是预期的行为。文档有问题,将予以更正。
【讨论】:
以上是关于Spotify App API 错误报告:播放器音量无法设置为值的主要内容,如果未能解决你的问题,请参考以下文章
Spotify API 创建播放列表返回 错误: 状态:400,消息:'解析 JSON 时出错。'