Skip to content

Latest commit

 

History

History
67 lines (45 loc) · 2.81 KB

README.md

File metadata and controls

67 lines (45 loc) · 2.81 KB

Spotify Auth Library

Maven Central

This repository is now a part of spotify/android-sdk. Please post new issues there!

This library is responsible for authenticating the user and fetching the authorization code/access token that can subsequently be used to play music or in requests to the Spotify Web API.

Breaking changes in Spotify Auth library version 2.0.0

In this version we replaced use of WebView with Custom Tabs since Google and Facebook Login no longer support WebViews for authenticating users.

As part of this change the library API does not contain AuthorizationClient#clearCookies method anymore. Custom Tabs use the cookies from the browser.

Integrating the library into your project

To add this library to your project add following dependency to your app build.gradle file:

implementation "com.spotify.android:auth:<version>"

Since April 2021 we're publishing the library on MavenCentral instead of JCenter. Therefore to be able to get the library dependency, you should add MavenCentral into repositories block:

repositories {
    mavenCentral()
    ...
}

Since Spotify Auth library version 2.0.0 you also need to provide the scheme and host of the redirect URI that your app is using for authorizing in your app build.gradle file. Below is an example of how this looks for the auth sample project using spotify-sdk://auth redirect URI:

    defaultConfig {
        manifestPlaceholders = [redirectSchemeName: "spotify-sdk", redirectHostName: "auth"]
        ...
    }

To learn more see the Authentication Guide and the API reference.

Flavors

Since Spotify Auth library version 2.1.0, two versions of the library are provided that differs in their behaviour if the Spotify application cannot be used to login:

  • auth - Opens the web browser to login to Spotify
  • store - Redirects to the Android Play store to download the Spotify application

Sample Code

Checkout the sample project.

Contributing

You are welcome to contribute to this project. Please make sure that:

  • New code is test covered
  • Features and APIs are well documented
  • ./gradlew check must succeed

Code of conduct

This project adheres to the Open Code of Conduct. By participating, you are expected to honor this code.