zoriya / Opus

Android app for playing music from local file or from youtube.
https://www.raccoon-sdg.fr/en
GNU General Public License v3.0
9 stars 2 forks source link
android music-player musicapp playlist xamarin-android youtube youtube-downloader

Opus

This is an android app for playing music from local file or from youtube (while screen is off). You can as well edit metadata tag and manage playlist (local one or youtube one). If you want to download the app, check on the Release tabs.

This ReadMe is for developers only, if you want to see what the app can do, please take a look at this website: https://www.raccoon-sdg.fr/en

How to find the part of the code that interest you

Like every android app, every layouts are in the Resources/layout folder.

The first thing that the app will load is the MainActivity file. It will also display the Main Layout that is used everywhere in the app. For code of a specifc section of the app, check the list bellow.

The code of the app is devided in 4 differents folders:

How to build the app

Installation of the environement

To build the app, you'll need the following elements:

With all of these components, you then need to download the packages that the app need. For that, simply right click in the solution tab of visual studio and click "Restore NuGet packages". With that, you'll be able to build the app. For precise details on how to build for debugging, emulators or release builds please refer to the xamarin doc.

Youtube API Key

After that, you'll need an API key to use the youtube API.

Creating an API Key

To create an API KEY, go to https://console.developers.google.com and sign in with your google account. Then find and click on the "Create a Project" button. One your project has been created, go to the "Library" tab and select "Youtube Data API v3". On this tab, click on "Enable". You now have allowed your project to use the youtube api. Then, you'll need to really create the key that will allow you to communicate with the google servers. On the same website, select the "Credentials" tab. Then click on "Create credentials" and select API key. You'll have a popup with your new API key. Copy this, you'll need it in the next step. Please note that you can restrict your API key to one app, one website or one API. Since I'm using xamarin, the API key can't be restricted to the app only but you can allow this api key to work for youtube only.

Using the API Key inside Opus

To use your newly created API key, create an xml file in the Resources/values folder. You can name it how you want, that doesn't change a thing. Inside this file, paste this:

<?xml version="1.0" encoding="utf-8" ?>
<resources>
  <string name="yt_api_key">REPLACE-THIS-WITH-YOUR-API-KEY</string>
</resources>

Please remember that your api key shouldn't be public. I recommend you to add this file in your git-ignore.

Allow app installation

You'll also need to change the package name and the package signin-key (or simply disable it). It's because android will only allow new versions of the app if the newer version is signed with the same key as the older version so the easiest way to have your custom version is to change the package name, like that android won't even know that the two apps (your version and mine) are related.

If you find an issues or want to contribute to the project, open a request here.