Skip to content

Provide a ready-to-use Android development environment image #1765

@hubowi

Description

@hubowi

Hello Dev Container Maintainers,

First, thank you for the great work on providing these official development container images. They are incredibly helpful for standardizing development environments.

I'm writing to request a feature that I believe would benefit many developers: a dedicated, pre-configured Dev Container image for Android application development.

Currently, developers who need to build Android apps in a containerized environment (like GitHub Codespaces or local Dev Containers) often have to combine a base image (e.g., mcr.microsoft.com/devcontainers/base:ubuntu) with several features. While this works, it requires manual configuration of the Android SDK, command-line tools, build-tools, platform versions, emulator support, and acceptance of licenses. This process can be time-consuming, error-prone, and challenging to keep consistent across teams.

Proposal:
Create and publish an official mcr.microsoft.com/devcontainers/android image (or a similarly named variant under the src/ directory). This image should aim to provide a batteries-included environment for Android development, similar to the excellent language-specific images you already offer (like javascript-node or python).

Suggested Core Components:

  1. Base: A recent LTS version of Ubuntu.
  2. Android SDK: The core SDK, command-line tools, and a set of commonly used build-tools and platforms (e.g., the latest stable versions).
  3. Essential Tools: adb, fastboot, and necessary system libraries for running the emulator or connecting to physical devices.
  4. Licenses: Pre-accepted Android SDK licenses to enable seamless, non-interactive setup.
  5. Common Dependencies: git, curl, wget, unzip, and other utilities commonly needed in build scripts.

Potential Configuration Options:
The image could be made more flexible by allowing users to specify desired Android components via build arguments or a companion Dev Container Feature, enabling customization of SDK versions, NDK inclusion, etc.

Benefits:

· Faster Onboarding: New contributors or CI/CD systems can get a working Android build environment in minutes.
· Improved Consistency: Eliminates "it works on my machine" issues by providing a single, versioned, canonical environment.
· Reduced Complexity: Simplifies devcontainer.json files for Android projects, making them easier to maintain.

I understand this is a non-trivial request. If creating a full image is not immediately feasible, perhaps a comprehensive, official "Android SDK" Feature (published to ghcr.io/devcontainers/features) that robustly handles all setup steps would be a great first step.

I would be happy to help test any prototypes or provide more detailed feedback. Thank you for considering this request.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions