Skip to content

Repository files navigation

ARVIO

ARVIO is an Android media hub for TV, phone, and tablet form factors. This repository is maintained as a source-code and development mirror for the Android application.

The app provides a media browser, player shell, profile support, optional cloud sync, IPTV playlist support, catalog configuration, and integrations with user-configured services. ARVIO does not host, store, sell, or distribute movies, series, live TV channels, playlists, streams, or other third-party media.

Repository Purpose

This GitHub repository is for:

  • Source code review and development
  • Issue investigation and technical discussion
  • Build documentation
  • License and privacy documentation
  • Contribution review

It is not intended as an advertising page, download landing page, or content distribution repository.

Features

  • Android TV, Fire TV, phone, and tablet UI
  • Media browsing with TMDB metadata
  • IPTV M3U/Xtream playlist support
  • Optional ARVIO Cloud profile/settings sync
  • Optional Trakt.tv integration per profile
  • Watchlist and continue-watching state
  • Subtitle and audio track selection
  • User-configured addon/source support
  • ExoPlayer/Media3 playback with broad codec support

Availability

ARVIO is available on Google Play:

Get it on Google Play

Screenshots

Home Details
Home screen Details screen
Live TV Collections
Live TV screen Collections screen
Mobile Profiles
Mobile screen Profiles screen

Content And Source Policy

ARVIO is a player and organizer for user-configured sources. The repository does not include hosted media content, bundled playlists, IPTV credentials, debrid accounts, or third-party streaming catalogs.

Users are responsible for ensuring that any external services, playlists, addons, or URLs they configure are lawful and that they have the right to access the content they use. Contributors should not submit copyrighted media, credentials, private keys, access tokens, or links intended to enable unauthorized access to content.

DMCA Disclaimer

ARVIO functions as a media browser and player interface for user-configured sources, similar to how a web browser or media player can open URLs provided by the user.

No movies, series, live TV channels, playlists, or other third-party media are hosted by this repository or by ARVIO. Any content accessed through user-configured sources is hosted by third-party services outside this project.

Users are solely responsible for their usage and must comply with applicable local laws. If you believe content accessed through an external source violates copyright law, contact the actual file host, service provider, or source maintainer. The ARVIO repository and developers cannot remove content hosted by third parties.

Build And Run

Requirements:

  • Android Studio or Android SDK command-line tools
  • JDK 17
  • Android SDK 35

Use the tracked Gradle wrapper:

./gradlew :app:assemblePlayDebug
./gradlew :app:assembleSideloadDebug

On Windows PowerShell or Command Prompt:

.\gradlew.bat :app:assemblePlayDebug
.\gradlew.bat :app:assembleSideloadDebug

Install a debug build on a connected Android TV, Fire TV, emulator, phone, or tablet:

./gradlew :app:installPlayDebug
./gradlew :app:installSideloadDebug

For network ADB devices:

adb connect <device-ip>:5555
adb install -r app/build/outputs/apk/sideload/debug/app-sideload-debug.apk

Build variants:

  • play: Play Store build, self-update and CloudStream runtime disabled.
  • sideload: Direct APK build, self-update and CloudStream runtime enabled.
  • debug: development build.
  • staging: release-like build signed with the debug keystore for upgrade testing.
  • release: production build. Use a private release keystore for distribution.

Local Configuration

Cloud sync, Google sign-in, and Supabase-backed auth require local secrets. Copy the defaults file and fill in real values:

cp secrets.defaults.properties secrets.properties

secrets.properties is ignored and must not be committed.

For signed release builds, copy the keystore template and fill in local signing values:

cp keystore.properties.template keystore.properties

keystore.properties and keystore files are ignored and must stay private.

Release Checks

Before publishing a build, run:

./gradlew :app:compilePlayDebugKotlin
./gradlew :app:assemblePlayRelease
./gradlew :app:assembleSideloadRelease

Smoke-test startup, profile switching, playback, stream fallback, subtitle/audio switching, IPTV/EPG loading, addon add/remove, search, settings navigation, background sync, and repeated player open/close on the supported device classes.

Privacy

See PRIVACY.md for the privacy policy.

License

This project is licensed under the Apache License 2.0. See LICENSE for details.

AI Disclosure

This application was developed with significant AI assistance. Contributions should still be reviewed, tested, and treated as normal source code changes.

Disclaimer

ARVIO is a media hub application and player interface. It does not host, store, or distribute third-party content. The developers are not responsible for user-configured sources or misuse of the application.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages