Skip to main content

A Python library for interacting with Android TV using the Android TV Remote protocol v2

Project description

androidtvremote2

A Python library for interacting with Android TV using the Android TV Remote protocol v2. This is the same protocol the Google TV mobile app is using. It doesn't require ADB or enabling developer tools on the Android TV device. It only requires the Android TV Remote Service that comes pre-installed on most Android TV devices.

For a list of the most common commands you can send to the Android TV see: TvKeys. For a full list see here. In addition to commands you can send URLs to open apps registered to handle them. See this guide for how to find deep links for apps.

Credits

Example

See demo.py

Development environment

python3 -m venv .venv
source .venv/bin/activate
# for Windows CMD:
# .venv\Scripts\activate.bat
# for Windows PowerShell:
# .venv\Scripts\Activate.ps1

# Install dependencies
python -m pip install --upgrade pip
python -m pip install .

# Generate *_pb2.py from *.proto
python -m pip install grpcio-tools mypy-protobuf
python -m grpc_tools.protoc src/androidtvremote2/*.proto --python_out=src/androidtvremote2 --mypy_out=src/androidtvremote2 -Isrc/androidtvremote2

# Run pre-commit
python -m pip install pre-commit
pre-commit install
pre-commit run --all-files

# Alternative: run formatter, lint, and type checking
python -m pip install isort black flake8 ruff mypy
isort . ; black . ; flake8 . ; ruff . --fix ; mypy --install-types .

# Run tests
python -m pip install pytest
pytest

# Run demo
python -m pip install pynput zeroconf
python src/demo.py

# Build package
python -m pip install build
python -m build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

androidtvremote2-0.1.0.tar.gz (41.3 kB view details)

Uploaded Source

Built Distribution

androidtvremote2-0.1.0-py3-none-any.whl (44.6 kB view details)

Uploaded Python 3

File details

Details for the file androidtvremote2-0.1.0.tar.gz.

File metadata

  • Download URL: androidtvremote2-0.1.0.tar.gz
  • Upload date:
  • Size: 41.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.9

File hashes

Hashes for androidtvremote2-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1cbbfac323c5fe5d5c2b33b584f851e97b6e2c476523502172c6c9bde0ddeb3e
MD5 21db83dbc087b60b25ce39cde5999caf
BLAKE2b-256 7ffe18e21701f6468b9af61530f5c2eaf948303e327d7c09fae4bff69b6fc118

See more details on using hashes here.

File details

Details for the file androidtvremote2-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for androidtvremote2-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a488c30724c7aea9403e2afdee79d30ae3e97b21532e7b710d3c5b11cc4bb24e
MD5 b569c3f19f73178fe04042ece3e76973
BLAKE2b-256 9b407ec0f17e392ea7d7a7500127e0da3234b4ef06f3d42b500c573f90166fab

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page