Awesome
BurningSeries-Android
Watch any series or videos on Burning Series easily with this app. You can see the latest series and episodes, get an overview of all available series, save your favorites and start watching directly inside the app. You can't login to your Burning Series Account because it's not using an official API. Read the Important Notice for more info.
<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="60">
- Important Notice
- Motivation
- Used Technologies
- Supported devices and Installation
- Usage
- Contributing
- Support the project
Important Notice
This app is NOT OFFICIAL by Burning Series!!!
This is a personal project and doesn't rely on any official API by Burning Series, that means it could break any time. It's not guaranteed that this project will be maintained, especially not by any owner or developer of Burning Series. If the app stops working don't report that in any form on Burning Series, instead open an Issue or fix it yourself and create a pull request here.
This project is not related to any owner, developer or other staff from Burning Series
Motivation
Why did I create this app? Why not. Well as a developer you always search for new stuff to create and try to overcome problems you face while coding.
It all started by how annoyed I was when I tried to navigate on the Burning Series website while using a phone. So I thought we need an app for this. I searched for an official API and any stuff related to this but I couldn't find something.
That's where it ended. Well... until my developer mentality came out and I had to find a workaround.
When you can't find an official API build it yourself. At least that's what I did here. I started getting the data I needed from the website step by step until I could use and show all the data in an app.
Used Technologies
If you aren't interested in development or how the app works under the hood you can skip this part :)
The app uses a self build API using site scraping. This is done on multiple ways. First it tries to do that on the device, however if the site can't be reached because it's blocked by the users DNS for example then it fetches the data using a fallback built with WrapAPI. This way the user doesn't need a custom DNS or a VPN or any other type of workaround if Burning Series is blocked by their internet provider. Learn more about usual problems here Burning Series Domains. (That's the good part of an unofficial API!) Scraping the data using WrapAPI however is only done once a day to prevent exceeding the API rate limit.
The data is then stored in a local database on the device using Room so the app can be used in offline mode and doesn't need to get new data every time. Images are stored in separate files on the device for the same reason.
The data is emitted to the view lifecycle using Flow, you might find some small places where LiveData is used however I won't use LiveData anymore and migrate existing usage to Flow as it's easier to use and maintain.
Settings are saved using DataStore with Protocol Buffers.
Pull Requests relying on LiveData or Shared Preferences or Data Store Preferences won't be accepted!
Supported devices and Installation
All Android smartphones with version >=5.0 (Lollipop and up) as well as Android TVs are supported.
To install the app head over to the Release Section and download the .apk
file. For more advanced users is an .aab
file provided which can be installed using bundletool.
Installing the .apk
file is easy, just copy it to your phone (or download it directly on your phone) and open it to install. If this won't work you can use ADB sideloading to install it from your pc on your phone.
You can also download the app from F-Droid.
Search on the internet if you face any problems. Don't ask for help here!
Usage
The usage is pretty self explanatory the screenshots below show some examples.
Home | All | Favorites | Series |
---|---|---|---|
Contributing
When you face any bugs or problems please open an Issue.
To add functionality fork the project and create a pull request afterwards. You should know how that works if you are a developer :) You can add yourself to the list below if you want then.
Maintainers
Avatar | Contributor |
---|---|
DatLag |
Support the project
Supporting this project helps to keep it up-to-date. You can donate if you want or contribute to the project as well. This shows that the app is used by people and it's worth to maintain.
Another way of supporting is to actually use the app and activate hoster, so you and other people can start watching without bothering.