Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/festify/cordova-spotify
:notes: A Cordova / PhoneGap plugin for the Spotify SDKs on iOS and Android
https://github.com/festify/cordova-spotify
android-library cordova-plugin ios-lib spotify spotify-sdk
Last synced: 7 days ago
JSON representation
:notes: A Cordova / PhoneGap plugin for the Spotify SDKs on iOS and Android
- Host: GitHub
- URL: https://github.com/festify/cordova-spotify
- Owner: Festify
- License: mit
- Created: 2016-12-02T21:47:54.000Z (almost 8 years ago)
- Default Branch: develop
- Last Pushed: 2020-03-25T16:26:07.000Z (over 4 years ago)
- Last Synced: 2024-10-30T23:02:23.182Z (13 days ago)
- Topics: android-library, cordova-plugin, ios-lib, spotify, spotify-sdk
- Language: Objective-C
- Homepage:
- Size: 298 KB
- Stars: 23
- Watchers: 6
- Forks: 21
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Cordova Spotify SDK Plugin
[![Greenkeeper badge](https://badges.greenkeeper.io/Festify/cordova-spotify.svg)](https://greenkeeper.io/) [![Travis](https://img.shields.io/travis/Festify/cordova-spotify.svg)](https://travis-ci.org/Festify/cordova-spotify)
An [Apache Cordova](https://cordova.apache.org/) plugin providing access to the Spotify SDK for iOS and Android.
[API documentation](https://festify.github.io/cordova-spotify/)
## Features
This plugin provides a very simple and atomic layer over playback functionality of the Spotify SDK. It allows you to play Spotify tracks via their URI. Metadata and authentication functionality has deliberately been left out in favor of the [Web API](https://developer.spotify.com/web-api/) and our Spotify OAuth 2 plugin [cordova-spotify-oauth](https://github.com/Festify/cordova-spotify-oauth).
## Installation
```bash
cordova plugin add cordova-spotify
```Note: Make sure your installation path doesn't contain any spaces.
## Examples
The plugin is very simple to use. All methods can be called at any time and there is no initialization step. The plugin performs all necessary state changes automatically. All methods documented in the API documentation are exported under the global `cordova.plugins.spotify`-object.
### Play some good music
```js
cordova.plugins.spotify.play("spotify:track:0It6VJoMAare1zdV2wxqZq", {
clientId: ""
})
.then(() => console.log("Music is playing 🎶"));
```### React to user pressing pause button
```js
cordova.plugins.spotify.pause()
.then(() => console.log("Music is paused ⏸"));
```### Display current playing position
```js
cordova.plugins.spotify.getPosition()
.then(pos => console.log(`We're currently ${pos}ms into the track.`))
.catch(() => console.log("Whoops, no track is playing right now."));
```### React to events from native SKDs
```js
cordova.plugins.spotify.getEventEmitter()
.then(emitter => emitter.on('playbackevent', eventName => {
switch (eventName) {
case 'PlaybackNotifyPlay':
console.log("Playback was started");
break;
case 'PlaybackNotifyPause':
console.log("Playback was paused");
break;
default:
console.log("Some other event was raised:", eventName);
break;
}
}))
```## Contributing
Pull requests are very welcome! Please use the [gitmoji](https://gitmoji.carloscuesta.me/) style for commit messages.