标签: spotify

背景音频与cocoalibspotify

我为我的应用程序正确启用了背景音频(在plist中).在当前完成后播放下一首曲目在后台使用SPPlaybackManager(当手机被锁定/关闭时)不起作用.

当前曲目结束并且音频停止时,应用将不会开始播放下一首曲目,直到手机解锁并且我的应用再次变为活动状态.

我该如何解决?这是我用来开始播放下一首曲目的一段代码.我观察到当前曲目变为零,然后开始播放下一首曲目.日志显示我正在回放管理器对象中设置下一个当前曲目,但它是无声的.

- (void) observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {



    if([keyPath isEqualToString:@"spotifyPlaybackManager.currentTrack"]){

        NSLog(@"%@ %@",keyPath,self.spotifyPlaybackManager.currentTrack);

        if(self.spotifyPlaybackManager.currentTrack==nil && self.mode == PlayerModeSpotify){

            NSLog(@"PLAY NEXT");
            [self.spotifyPlaybackManager playTrack:self.nextSPTrack callback:^(NSError *error){
                if(error) TKLog(@"Spotify Playback Error %@",error);
            }];
        }
        [[NSNotificationCenter defaultCenter] postNotificationName:PlayerNowPlayingItemDidChange object:self];
        return;
    }



    [super observeValueForKeyPath:keyPath ofObject:object change:change context:context];
}
Run Code Online (Sandbox Code Playgroud)

安慰:

spotifyPlaybackManager.currentTrack (null)
PLAY NEXT
spotifyPlaybackManager.currentTrack <SPTrack: 0x60f8390>: Karaoke
Run Code Online (Sandbox Code Playgroud)

spotify cocoalibspotify-2.0

8
推荐指数
2
解决办法
1700
查看次数

Spotify登录错误INVALID_CLIENT:无效的重定向URI android

我正在制作一个包含spotify集成的应用程序,我按照这个链接https://developer.spotify.com/technologies/spotify-android-sdk/tutorial/

通过这个链接的引用,我把"festevo:// callback"作为回调重定向URI

当我每次遇到同样的错误时尝试登录spotify时.

<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />

    <data
           android:host="callback"
           android:scheme="festevo" />
Run Code Online (Sandbox Code Playgroud)

请告诉我为什么会这样......

谢谢.

redirect android login callback spotify

8
推荐指数
1
解决办法
1万
查看次数

如何增加Spotify令牌的到期时间?

请告知我如何增加令牌到期时间使用spotify web API" https://accounts.spotify.com/api/token " 获取数据

spotify access-token

8
推荐指数
2
解决办法
1万
查看次数

如何更新spotify会话?

我有一个应用程序,允许用户从spotify流式传输歌曲.因此,为了实现这一点,每当用户想要从spotify流式传输歌曲时,我需要不时更新会话.我正在使用最新的spotify sdk(beta-9),我目前正在关注https://www.youtube.com/watch?v=GeO00YdJ3cE的教程.在该教程中,我们需要刷新令牌交换,但是当我从https://developer.spotify.com/technologies/spotify-ios-sdk/tutorial/查看时,无需刷新令牌交换.

我最终没有使用令牌交换,当我刷新我的会话然后播放歌曲与更新的会话,我得到以下错误:

错误域= com.spotify.ios-sdk.playback代码= 8"由于凭据无效,登录Spotify失败." UserInfo = 0x7f840bf807b0 {NSLocalizedDescription =由于凭据无效,登录Spotify失败.}

我正在使用下面的代码来更新我的会话:

 let userDefaults = NSUserDefaults.standardUserDefaults()

    if let sessionObj : AnyObject = NSUserDefaults.standardUserDefaults().objectForKey("spotifySession") {

        let sessionDataObj : NSData = sessionObj as! NSData
        let session = NSKeyedUnarchiver.unarchiveObjectWithData(sessionDataObj) as! SPTSession
        self.playUsingSession(session)

        if !session.isValid() {

            SPTAuth.defaultInstance().renewSession(session, callback: { (error : NSError!, newsession : SPTSession!) -> Void in

                if error == nil {

                    let sessionData = NSKeyedArchiver.archivedDataWithRootObject(session)
                    userDefaults.setObject(sessionData, forKey: "spotifySession")
                    userDefaults.synchronize()

                    self.session = newsession

                    self.playUsingSession(newsession)

                }else{

                    println("renew session …
Run Code Online (Sandbox Code Playgroud)

iphone session spotify ios swift

8
推荐指数
1
解决办法
1874
查看次数

使用Spotipy设置Spotify凭据

我正在试用我的mac 10.10预装的python 2.7.10,特别是[add_a_saved_track.py] [1]这是从github复制的代码:

# Add tracks to 'Your Collection' of saved tracks

import pprint
import sys

import spotipy
import spotipy.util as util

scope = 'user-library-modify'

if len(sys.argv) > 2:
    username = sys.argv[1]
    tids = sys.argv[2:]
else:
    print("Usage: %s username track-id ..." % (sys.argv[0],))
    sys.exit()

token = util.prompt_for_user_token(username, scope)

if token:
    sp = spotipy.Spotify(auth=token)
    sp.trace = False
    results = sp.current_user_saved_tracks_add(tracks=tids)
    pprint.pprint(results)
else:
    print("Can't get token for", username)
Run Code Online (Sandbox Code Playgroud)

我使用developer.spotify.com/my-applications注册了该应用程序,并收到了client_id和client_secret.我对redirect_uri的选择有点不清楚所以我把它设置为' https://play.spotify.com/collection/songs '

从终端运行这个我得到一个错误,说:

You need to set your Spotify API credentials. You …
Run Code Online (Sandbox Code Playgroud)

spotify oauth-2.0 python-2.7 spotipy

8
推荐指数
1
解决办法
4373
查看次数

Spotify会话管理

我在我的应用程序中有一个spotify登录并尝试进行自动登录:

登录功能

func getSpotifyToken(fromController controller: UIViewController, success: (spotifyToken: String?) -> Void, failure: (error: NSError?) -> Void) {

    loginSuccessBlock = success
    loginFailureBlock = failure

    SPTAuth.defaultInstance().clientID        = SpotifyClientID
    SPTAuth.defaultInstance().redirectURL     = NSURL(string: SpotifyRedirectURI)
    SPTAuth.defaultInstance().requestedScopes = [SPTAuthStreamingScope, SPTAuthPlaylistReadPrivateScope]

    let spotifyLoginController = SPTAuthViewController.authenticationViewController()
    spotifyLoginController.delegate = self
    spotifyLoginController.clearCookies { () -> Void in
        controller.presentViewController(spotifyLoginController, animated: true, completion: nil)
    }
}
Run Code Online (Sandbox Code Playgroud)

检查会话是否存在

private func spotifyConnected() -> Bool {        
    if SPTAuth.defaultInstance().session == nil {
        self.loadSpotifySession()
    }        
    return SPTAuth.defaultInstance().session != nil
}
Run Code Online (Sandbox Code Playgroud)

保存会议

private func saveSpotifySession() {
    let sessionData …
Run Code Online (Sandbox Code Playgroud)

spotify ios swift

8
推荐指数
1
解决办法
1374
查看次数

Spotify iOS SDK可以访问脱机轨道

是否可以使用Spotify iOS SDK离线访问曲目?我没有找到任何文档或示例来说明这是如何实现的.

一些旧问题表明它已在弃用的LibSpotifylibrary中提供,但强烈建议使用新的Spotify iOS SDK.

有一个Android离线播放的请求,但即使这已经有将近两年了,我没有找到关于iOS SDK的任何内容.

spotify

8
推荐指数
0
解决办法
726
查看次数

通过Spotify API将歌曲添加到Spotify Queue

使用Spotify Web API的新端点/播放器,我们现在可以控制Spotify客户端的播放.使用端点https://api.spotify.com/v1/me/player/play,我们可以添加要播放的歌曲.

我想知道是否有办法利用新的端点将歌曲添加到玩家的队列中.我打算写一个应用程序,让多个客人请求可以通过聚会上的Spotify播放的歌曲.

有没有人有想法?

api spotify

8
推荐指数
1
解决办法
6166
查看次数

如何从 Spotify 获取 Oauth 令牌

目前我正在尝试学习如何使用 python 将喜欢的 youtube 视频添加到 Spotify 播放列表中,我正在从https://www.youtube.com/watch?v=7J_qcttfnJA&t=300s学习

在视频的 2 分 18 秒中,她提到使用 Spotify Web API 网站https://developer.spotify.com/documentation/web-api/从 Spotify 添加 userID 和 oauth 令牌

但是,我无法找到 OAUTH 令牌在哪里。

程序员还上传了她从哪里获得令牌的图像,但我似乎找不到它:https ://github.com/TheComeUpCode/SpotifyGeneratePlaylist/blob/master/images/spotify_token.png

python spotify

7
推荐指数
2
解决办法
2万
查看次数

URI 的未定义方法“编码​​”:使用 gem Rspotify 的模块

我正在使用gem rspotify来访问我的 Rails 应用程序中的 Spotify 的 api。Rails 版本是 6.0.4 但最重要的是 Ruby 版本是 3.0.0

当我尝试调用 api 方法时,我不断收到此错误“URI:Module 的未定义方法‘编码’”。我必须强调,当我降级到 Ruby 2.6.3 时,我没有收到此错误。Ruby 3.0.0 似乎不支持 URI 编码。我的用户控制器是下面的代码示例。我收到Spotify_user.country和其他 api 方法的错误。

class UsersController < ApplicationController
  skip_before_action :authenticate_user!, only: [ :spotify]

  def spotify
    spotify_user = RSpotify::User.new(request.env['omniauth.auth'])
    spotify_user.country
  end
end
Run Code Online (Sandbox Code Playgroud)

在config/application.rb中

RSpotify::authenticate(ENV['SPOTIFY_CLIENT_ID'], ENV['SPOTIFY_CLIENT_SECRET'])
Run Code Online (Sandbox Code Playgroud)

在 devise.rb 中,我有

require 'rspotify/oauth'

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :spotify, ENV['SPOTIFY_CLIENT_ID'], ENV['SPOTIFY_CLIENT_SECRET'], scope: 
  'user-read-email playlist-modify-public user-library-read user-library-modify'
end
Run Code Online (Sandbox Code Playgroud)

我想知道是否有一个不涉及降级 ruby​​ 版本的错误解决方案

ruby uri ruby-on-rails urlencode spotify

7
推荐指数
2
解决办法
1万
查看次数