# Android background service description
## Project description
We have a mobile app where it is possible to chromecast videos.
App is made in Xamarin-Forms and is using LibVLCSharp. The library is working fine for both playing videos inside app and chromecasting videos to external screen.
Problem is when app is going to the background when app is chromecasting a video, video will be disconnected after some time. This could be 2 min or maybe 20 min. But video chromecast will be disconnected. On iOS this is handled for now, but on Android we have this problem. Our videos may last for 3 hours and it is not acceptable that user cannot use her device while chromecasting in the meantime or let the device go into sleep mode.
On Android we need to create a background service that will continue chromecasting video while app is in background or device is in battery safe mode (screen is off). It should be possible to continue chromecast for as long as video last (more that 3 hours).
The official VLC Android player is capable of this and we have been told from the maintainers of that app, that a background service is used. So we know it is possible to do.
* Accept-Criteria: Chromecast will continue to end of movie, both when app is in foreground and background on Android
* Accept-Criteria: Device can go into battery save mode (screen off) without stopping chromecast on Android
* Accept-Criteria: It should be possible to retrieve phonecalls on device without disconnecting chromecast on Android
* Accept-Criteria: It should be possible to use other apps (ex Facebook, twitter etc) without disconnecting chromecast on Android
## Qualifications for the job
* You need to be experienced in Android app development and know about background services.
* You should be able to retrieve required information from the official VLC-Android repository and VlcSharp repository.
* You should be able to test and chromecast a demo app for prove of concept.
* It would be nice if you also can work in a C# environment , but not required. We will help to migrate your code to Xamarin Forms if necessary.
You will be working with a Xamarin-Forms demo app or you have to create an android app yourself for demo purposes. We can deliver link to a long movie.
[VideoLAN / LibVLCSharp · GitLab](https://code.videolan.org/videolan/LibVLCSharp)
[VideoLAN / VLC-Android · GitLab](https://code.videolan.org/videolan/vlc-android)
You need to tell us what you want in payment to do the task for us. We will pay a fixed price for the task and not an hourly wage (we will know in advance what it costs to get the job done). We will only pay if all the acceptance criteria are met. We are willing to pay whatever it cost as long as you are meeting the acceptance criteria.
What do you want in payment (fixed price) to solve this task for us and how fast can you deliver?