Android App That Uses Spotify Github

A collaborative list of open source Xamarin apps.

Learn how to use a web API from within an Android app using Retrofit. Get posts from social media, store data on the cloud, and much more! Free and Open Source Software projects by Spotify. A GitHub Template Repository to create an NPM library which uses @spotify/web-scripts. Head over to Spotify for Developers for more reading about the Android SDK. Spotify App Remote. This library contains classes for music playback control and metadata access. The built-in authentication in App Remote requests for app-control-scope only, and is the only scope needed to use App. Leave the page open as you’ll need to copy the Client ID shown into the Android app. With that set up, we’ll now create the Android app. Create a new Android project (I’m using Android Studio. Sample demo apps using the Spotify API. Build the apps by the GitHub community. Spotify Apps (Unofficial).

If you know something that is not here, it’ll be great if you could make a Pull Request.

All applications are sorted in various categories.

Jump to

  • Open Source Xamarin Apps
    • Health
    • Developer

Auth

  • Safe Authenticator: Is a cross-platform mobile application that can be used to create an account and login into the SAFE Network. [ Forms: iOS, Android]
  • Authenticator Pro: Is a free open-source two factor authentication app with backup support. [Android]

Business

  • BikeSharing360: Is a fictitious example of a smart bike sharing system. [ Forms: UWP, Android, iOS, watchOS] + Backend
  • SmartHotel360: In this app guests and business travelers can book rooms and smart conference rooms as well as customize room temperature and lighting settings. [ Forms: UWP, iOS, Android] (Features: NFC, IoT, Maps etc.) + Backend
  • Tailwind Traders Mobile: Is a line-of-business application. [ Forms: iOS, Android] (Features: Azure, Camera, ML) + Backend
  • My Shoppe: Pre-built application & template enabling you to easily connect with your customers and manage your shops [ Forms: UWP, iOS, Android, Backend]
  • Restaurant App: Restaurant App ( Forms: iOS, Android, WPF)

Computer Vision

  • Conference Vision: Prototype reference app showcasing: Xamarin.Forms 3.0, Computer Vision [ Forms: UWP, iOS, Android]
  • AI Visual Provision: Application uses Cognitive Services to detect Azure services using the phone camera [ Forms: iOS, Android]

Education

  • EduCATS: Mobile client for the Leaning Management System EduCATS [ Forms: iOS, Android]

Event

  • Conference Mobile App: Pre-build conference application [ Forms: UWP, iOS, Android, Backend]
  • DotNetRu App: .NET Russian user-group application [ Forms: iOS, Android]
  • MeetupManager: Meetup.com app to track users at events [ Forms: iOS, Android, WP8]

Media

  • Chameleon: Flexible media player [ Forms: iOS, Android]
  • Uno.Ch9: Simple app to playing video feed from Microsoft’s Channel 9 [ Uno: iOS, Android, UWP]
  • gMusic: To provide the best Music Player for Google Play Music on iOS [iOS]
  • Kimono Designer: Editor SkiaSharp based graphic objects [ Forms: macOS, UWP, iOS, Android, tvOS, WPF]
  • DailyCat: High performance image gallery app [ Forms: iOS, Android]
  • Xamarin TV: Full-featured TV app demonstrating the dual-screen device capability for neo and duo devices. [ Forms: Android, UWP]

Communication

  • CrossChat: Chat application [ Forms: iOS, Android, WP, Backend]
  • SignalR Chat: SignalR chat client [ Forms: iOS, Android]
  • UnofficialGitterApp: Simple unofficial Android client for Gitter [ Forms: Android, WP8]

Timer

  • Pomodoro: Simple pomodoro timer [Android]
  • Toggl Timer: Timesheet tracker [iOS]

Location

  • GEO Alarm: Alarm based your location [Android, WP]

Social

  • TweetStation: MonoTouch based Twitter client [ iOS ]

Health

Fitness

  • My StepCounter: Simple pedometer [iOS, Android]

Password

  • Bitwarden: An easy way for store, share, and sync sensitive data [ Forms: iOS, Android]

File Manager

  • Camelotia: File manager for cloud storages [ Forms: AndroidUWPAvalonia: Windows, Linux, macOS ]

Finance

  • EMI Calculator: Equated Monthly Instalment Calculator (Demo) [ Forms: iOS, Android]
  • Money Fox: A way to make budgeting easy [ Forms: UWP, Android]

Weather

  • XWeather: Weather app [iOS, Android]

Reading

  • OneSync Reader: OneSync Reader app [Android]

Developer

  • UADO: Universal Azure DevOps App is an app to help you organize Work Items in Microsoft Azure DevOps projects [ Uno: iOS, Android, UWP]

Git

  • CodeBucket: Browse & maintain Bitbucket repositories [iOS]
  • CodeHub: Browse & maintain GitHub repositories [iOS]
  • Repository Stumble: Helps you find new and exciting open source code on GitHub [iOS]
  • GitIt: Cross-platform application for GitHub [UWP, Android]
  • GitTrends: Monitors the views and clones of your GitHub repositories [ Forms: iOS, Android]

Games

  • TicTacToe: Simple Tic-tac-toe game [ Forms: iOS, Android]
  • Quarantine Bingo: Simple app that displays a bingo card. [ Forms: iOS, Android]

IoT

  • Where’s my Kombucha? App: Kombucha Tracker App uses Arduino style microcontroller called “Particle Photon” to connect mobile phones to the real world. ( Forms: iOS, Android)

Clones

  • Moments: Snapchat [ Forms: iOS, Android]
  • KickassUI.Spotify: Spotify [ Forms: iOS, Android]
  • Instagram: Instagram [ Forms: UWP, iOS, Android]
  • FacebookForms: Facebook [ Forms: UWP, iOS, Android]
  • KickassUI.Runkeeper: Runkeeper [ Forms: iOS, Android]
  • KickassUI.Twitter: Twitter [ Forms: iOS, Android]
  • Xamarin.Netflix: Netflix [ Forms: iOS, Android]
  • YellowClone: Yellow App [ Froms: iOS, Android]
  • WhatsApp UI: WhatsApp [ Forms: iOS, Android]
  • xUber: Uber [ Forms: iOS, Android] (Features: Maps, Location)
  • Xam Nubank: Nubank [ Forms: iOS, Android]
  • PlayMusic: Google Play Music [ Forms: iOS, Android]
  • SoundCloudClone: SoundCloud [ Forms: iOS, Android]
  • Tinder: Tinder clone and library [ Forms: iOS, Android]
  • Duolingo: Duolingo App [ Forms: iOS, Android]
  • Xamarin-CloudMusic: Netease Cloud Music App [ Forms: iOS, Android]
  • TNT GO: A clone of the TNT GO app [ Forms: iOS, Android]
  • Xam-Twitch: Twitch app clone [ Forms: iOS, Android]

Misc

  • MALClient: Client application for MyAnimeList.net website [UWP, Android]
  • Dragon Front Companion: Client for the Dragon Front game. [ Forms: iOS, Android, UWP]
  • Island Tracker for Animal Crossing: Productivity tool for Animal Crossing. [ Forms: iOS, Android]
  • Acquaint: The app is a list of contacts with details and map [ Forms, Native: UWP, iOS, Android]
  • LiveDisplay: Application to control notifications and music directly on the lockscreen. [Android]
  • Workout Wotch: Exercise programs dictated to you. [iOS]
  • Coffee Cups: Azure Mobile Apps and Easy Tables [ Forms: UWP, iOS, Android]
  • Geo Contacts: Azure demo contact list feature Azure AD B2C, Functions, & CosmosDB. [ Forms: iOS, Android]
  • Nethereum.UI.Wallet.Sample: Cross-platform wallet example using Nethereum, Xamarin.Forms and MvvmCross [ Forms: macOS, UWP, iOS, Android]
  • My Trip Countdown: Trip Countdown is a sample to show how to create goodlooking UI with SkiaSharp. [ Forms: iOS, Android]
  • Pulse Music: Pulse Music is a sample to show how to create goodlooking UI with SkiaSharp. [ Forms: iOS, Android]
  • Microsoft REEL: Cross-platform movie recommendation application. [ Forms: iOS, UWP]
  • HackerNews: Displays the top posts on Hacker News that demonstrates text sentiment analysis gathered using artificial intelligence [ Forms: iOS, Android]
  • FashionApp: Design beautiful fashion app using Shell, BindableLayout, ControlTemplate and more [ Forms: iOS, Android]
  • FlyMe: Sample app showcasing the use of Material Design and CollectionView within the new Shell container [ Forms: iOS, Android, UWP]
  • FocusOnXamarin: NET Conf: Focus on Xamarin samples [ Forms: iOS, Android]
  • Uno Playground: Uno Gallery of components and samples [ Uno: iOS, Android, UWP]
  • WeeklyXamarin.mobile: Mobile Application for Weekly Xamarin [ Forms: iOS, Android, UWP]
  • Xamarin.Forms Samples: Official sample apps built using the Xamarin.Forms framework.

Contributing

We are happy to receive Pull Requests or the proposal to adding a new link to the amazing material.

Share

Like this project? Why not share to your friend :)

Github

License

To the extent possible under law, Yauheni Pakala has waived all copyright and related or neighboring rights to this work.

AppAuth for Android is a client SDK for communicating with OAuth 2.0 and OpenID Connect providers. It strives todirectly map the requests and responses of those specifications, while followingthe idiomatic style of the implementation language. In addition to mapping theraw protocol flows, convenience methods are available to assist with commontasks like performing an action with fresh tokens.

The library follows the best practices set out in OAuth 2.0 for Native Appsincluding usingCustom Tabsfor the auth request. For this reason,WebView is explicitly not supported due to usability and security reasons.

The library also supports the PKCEextension to OAuth which was created to secure authorization codes in publicclients when custom URI scheme redirects are used. The library is friendly toother extensions (standard or otherwise) with the ability to handle additionalparameters in all protocol requests and responses.

Specification

Supported Android Versions

AppAuth supports Android API 16 (Jellybean) and above.

When a Custom Tabs implementation is provided by a browser on the device (forexample byChrome), CustomTabs are used for authorization requests. Otherwise, the default browser is usedas a fallback.

Authorization Server Support

Both Custom URI Schemes (all supported versions of Android) and App Links(API 23+) can be used with the library.

In general, AppAuth can work with any Authorization Server (AS) that supportsnative apps,either through custom URI scheme redirects, or App Links.AS's that assume all clients are web-based or require clients to maintainconfidentiality of the client secrets may not work well.

Building the Project

Prerequisites

The project requires the Android SDK for API level 23 (Marshmallow) to build,though the produced binaries only require API level 16 (Jellybean) to beused.

Configure the Demo App

Follow the instructions in app/README.md to configure thedemo app with your own OAuth client (you need to update 3 configuration pointswith your client info to try the demo).

Building from the Command line

AppAuth for Android uses Gradle as its build system. In order to buildthe library and app binaries, run ./gradlew assemble.The library AAR files are output to library/build/outputs/aar, while thedemo app is output to app/build/outputs/apk.In order to run the tests and code analysis, run ./gradlew check.

The build script attemptsto guess the location of your SDK by looking at the values of $ANDROID_SDK_HOMEand $ANDROID_HOME. If neither of these are defined or are not the SDK youwish to use, you must create a local.properties file in the project root.This file must define a property sdk.dir that points to your SDK rootdirectory. For example:

Building from Android Studio

Android App That Uses Spotify Github

In AndroidStudio, File -> New -> Import project. Select the root folder(the one with the build.gradle file).

If you get an error like:Error:Could not find com.android.support:customtabs:23.2.0. then be sure youhave installed the Android Support Library from the Android SDK Manager.Follow the Android Studio prompts to resolve the dependencies automatically.

Auth Flow

AppAuth supports both manual interaction with the Authorization Serverwhere you need to perform your own token exchanges, as well as conveniencemethods that perform some of this logic for you. This exampleperforms a manual exchange, and stores the result as an AuthState object.

Tracking authorization state

Android App That Uses Spotify Github App

AuthState is a class that keeps track of the authorization and tokenrequests and responses, and provides a convenience method to call an API withfresh tokens. This is the only object that you need to serialize to retain theauthorization state of the session. Typically, one would do this by storingthe authorization state in SharedPreferences or some other persistent storeprivate to the app:

Configuration

You can configure AppAuth by specifying the endpoints directly:

Or through discovery:

Android App That Uses Spotify Github Password

Authorizing

After configuring or retrieving an authorization service configuration,an authorization request can be constructed for dispatch

Requests are dispatched with the help of AuthorizationService. As thiswill open a custom tab or browser instance to fulfill this request, theresponse is delivered via an intent to an activity of your choosing:

Handling the Redirect

The response is delivered to the specified handler, and can be extractedfrom the intent data:

Given the auth response, a token request can be created to exchange theauthorization code:

Making API Calls

With an updated AuthState based on the token exchange, it is then possible tomake requests using guaranteed fresh tokens at any future point:

Github App Android Download

API Documentation

Browse the API documentation.