Я хочу, чтобы отключить следующие и предыдущие кнопки в spotify. Я знаю, что это возможно, потому что приложение soundrop удалось это сделать.Отключить следующие предыдущие кнопки в spotify
Я немного искал, и, по моему мнению, я должен воспроизвести дорожку с контекстом как нуль или контекст, содержащий только один трек. Я тестировал все возможные решения, о которых я могу думать, но никто из них, похоже, не работает. Большинство из них фактически приводят к тому, что трек воспроизводится с контекстом как null, но кнопки Next/Previous всегда включены.
Если я нажимаю на следующую кнопку, игрок заканчивает не играет какой-либо дорожки, и обе кнопки отключены ...
Ниже приведен код из моего тестового приложения.
var sp = getSpotifyApi(1);
var models = sp.require('sp://import/scripts/api/models');
var views = sp.require('sp://import/scripts/api/views');
models.player.observe(models.EVENT.CHANGE, function (o) {
console.log(['Player Change', o, models.player.context]);
})
$('#play1').click(function() {
models.Track.fromURI("spotify:track:5A1fNC7Fdb0yyh3UA6T1ef", function (track) {
console.log(["play1", track.name]);
models.player.play(track, null);
});
});
$('#play2').click(function() {
models.Track.fromURI("spotify:track:5A1fNC7Fdb0yyh3UA6T1ef", function (track) {
console.log(["play2", track.name]);
var p = new views.Player();
p.play(track, null);
});
});
$('#play3').click(function() {
models.Track.fromURI("spotify:track:5A1fNC7Fdb0yyh3UA6T1ef", function (track) {
console.log(["play3", track.name]);
var pl = new models.Playlist();
pl.add(track);
models.player.play(track, pl);
});
});
$('#play4').click(function() {
console.log(["play4"]);
models.player.play("spotify:track:5A1fNC7Fdb0yyh3UA6T1ef", null);
});
$('#play5').click(function() {
models.Track.fromURI("spotify:track:5A1fNC7Fdb0yyh3UA6T1ef", function (track) {
models.player.playTrack(track);
});
});
$('#play6').click(function() {
models.Track.fromURI("spotify:track:5A1fNC7Fdb0yyh3UA6T1ef", function (track) {
console.log(["play6", track.name]);
var pl = new models.Playlist();
pl.add(track);
models.player.playTrackWithContext(track, pl, 0);
});
});
$('#play7').click(function() {
var l = new models.Link("spotify:track:5A1fNC7Fdb0yyh3UA6T1ef");
sp.trackPlayer.setContextCanSkipNext(l, false);
console.log(["play7", models.player, sp.trackPlayer],l);
models.player.play(l, null);
});
Результат от # play1:
["play1", "Jag är här nu"]
["Player Change", Object, null]
Результат от # PLAY2:
["play2", "Jag är här nu"]
["Player Change", Object, null]
Результат от # PLAY3:
["play3", "Jag är här nu"]
["Player Change", Object, "spotify:internal:temp_playlist:spotify:app:[email protected]"]
Результат от # play4:
["play4"]
["Player Change", Object, null]
Результат от # play5:
["play5", "Jag är här nu"]
["Player Change", Object, null]
Результат от # play6:
["play6", "Jag är här nu"]
["Player Change", Object, "spotify:internal:temp_playlist:spotify:app:[email protected]"]
Результат от # play7:
sp.trackPlayer.setContextCanSkipNext(l, false);
В строке выше генерирует исключение с сообщение «Не удалось преобразовать параметр 0 в ссылку»
Заранее благодарен
Никто не имеет какие-либо идеи? Я несколько раз видел этот вопрос в stackoverflow, но ни один из них не получил никаких реальных ответов ... – Roger