Giter Site home page Giter Site logo

android-tv-program-guide's Introduction

android-tv-program-guide

Scrolling demo

This is an open-source EPG (electronic program guide) implementation for Android TV only. The code in this repository is based on the official Android TV channel browser implementation.

We have removed the parts where it fetches all the program data from the cable TV connection, and replaced it with the ability to set your own data. Also we have converted the code to Kotlin and AndroidX.

The demo project

Features and usage

The programs you give to the program guide manager will be put in a row. Each channel has its own row, so you can quickly switch channels (up and down) or scroll in time (left and right). Next to that, there are quick buttons to switch between days and times of the day. Also, you can jump to the current time by clicking on the jump to live button.

Selecting a day

By extending the ProgramGuideFragment, you can get callbacks for when the selected program has changed, a program has been clicked, or the user requested that the data for a different day should be loaded.

Package

The repo consists of a library and demo project. The demo project showcases the usage and provides a quick way to test the workings of the library module.

Since there can be a lot of program guide designs, we do not provide the library as a package. You will probably have to fork this project to modify it according to your specifications and layouts. For the same reason, a lot of features are not configurable, to keep the code simple. If you feel that we should still offer a package, feel free to open a ticket to discuss :)

Right-to-Left (RTL) layout direction

This library supports RTL devices. When the layout direction is inverted, it will show the top and bottom widgets aligned to the right side, as well as the channel list, and the timeline will count up from right to left, so it will be inverted as well. If you don't wish to change the timeline, you can revert commit d7ba2af7e5d82bc9751a66a1a2f491ea85bfe458.

Support

Have you found a bug, or does the library not work on your device? Open a ticket with the reproduction steps and the manufacturer and model of your device, and we will do our best to help you. Pull requests are always welcome.

License

This project is licensed under the Apache 2.0 license

android-tv-program-guide's People

Contributors

dzolnai avatar halilozel1903 avatar iuliastana avatar okaymak avatar petercv avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.