Skip to content

This is a sample project that supports the Android TV OS app. It uses the BLoC architecture pattern, along with Dio for network management and Drift for database handling.

Notifications You must be signed in to change notification settings

NicosNicolaou16/SampleFlutterTVApp

Repository files navigation

Sample Flutter TV App

This is a sample project that supports the Android TV OS app. It uses the BLoC architecture pattern, along with Dio for network management and Drift for database handling.

Important

NOTE: EXAMPLE FOR ANDROID ONLY.

The Project Contain the following technologies and libraries

Android TV OS is a version of Android designed for smart TVs, providing an optimized interface for streaming and apps.
Bloc Patterns using single state along with repositories and services, separates business logic, data access, and UI by using streams to handle state and manage data flow. (Bloc Pattern Documentation)
Dio Network Manager is responsible for making requests and retrieving data from the remote server.
Drift Database (SQL)
Drift Database is responsible for saving the retrieved data from the remote server, querying data from the local database, and supporting offline functionality. (Drift Database Documentation)
Cached Network Image is a package that it is responsible for loading the images and supports offline functionality.

Setup

Setup in Manifest

<manifest>

    <uses-feature android:name="android.software.leanback" android:required="false" />

    <uses-feature android:name="android.hardware.touchscreen" android:required="false" />

    <application android:banner="@mipmap/ic_launcher">
        <!--other code here-->
        <activity>
            <!--other code here-->
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
                <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
            </intent-filter>
        </activity>
        <!--other code here-->
    </application>
</manifest>

Important

Check my article for the setup 👉 Android TV Application (Setup for Jetpack Compose and Flutter) - Medium 👈

Important

Similar project with (Kotlin Language) 👉 SampleAndroidTvApp 👈

Versioning

Flutter SDK version: 3.27.1
Dart Version: 3.6.0

Feeds/Urls/End Point (parsing some data from response)

(Links References for Ends Points)

/~https://github.com/r-spacex/SpaceX-API (GitHub)
https://docs.spacexdata.com/?version=latest (Postman)

References

https://mobikul.com/tv-app-using-flutter/
https://stackoverflow.com/questions/69607355/how-to-create-stack-vertical-listview-and-horizontal-listview-in-flutter-draggab

About

This is a sample project that supports the Android TV OS app. It uses the BLoC architecture pattern, along with Dio for network management and Drift for database handling.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages