ios auth
v1.1.1
SpotifyLogin
é uma estrutura leve que permite que seu aplicativo obtenha o código de autenticação do aplicativo Spotify. Observe que essa estrutura está atualmente em desenvolvimento e suporta apenas um subconjunto das funcionalidades do iOS-SDK. Se você deseja usar todos os recursos relacionados à autenticação, utilize iOS-SDK.
iOS 11
SpotifyLogin.xcframework
ao seu projeto, arrastando e soltando -o em estruturas, bibliotecas e conteúdo incorporadospotify
adicionando a chave LSApplicationQueriesSchemes
.Configuration
com o ID do seu cliente e redireciona o URI.import SpotifyLogin
let configuration = Configuration ( clientID : " your_client_id " , redirectURLString : " your_redirect_uri " )
# import < SpotifyLogin/SpotifyLogin.h >
SPTConfiguration* configuration = [[SPTConfiguration alloc ] initWithClientID: @" your_client_id " redirectURLString: @" your_redirect_uri " ];
SessionManager
com sua configuração e defina um objeto que esteja em conformidade com a SessionManagerDelegate
ao delegate
da instância. let sessionManager = SessionManager ( configuration : configuration )
sessionManager . delegate = < #delegate object# >
_sessionManager = [[SPTSessionManager alloc ] initWithConfiguration: configuration];
_sessionManager.delegate = <#delegate object#>;
application(_:open:options:)
Método para o seu aplicativo UIApplicationDelegate
e ligue para o SessionManager application(_:open:options:)
lá. class AppDelegate : NSObject , UIApplicationDelegate {
func application ( _ application : UIApplication , open url : URL , options : [ UIApplication . OpenURLOptionsKey : Any ] = [ : ] ) -> Bool {
return sessionManager . openURL ( url )
}
}
@implementation AppDelegate
- ( BOOL ) application : (UIApplication *) app openURL : ( NSURL *) url options : ( NSDictionary <UIApplicationOpenURLOptionsKey,id> *) options {
return [_sessionManager openURL: url];
}
@end
sessionManager . startAuthorizationCodeProcess ( with : [ . playlistModifyPublic , . playlistModifyPrivate ] )
[_sessionManager startAuthorizationCodeProcessWith: SPTScopePlaylistModifyPublic|SPTScopePlaylistModifyPublic campaign: NULL ];