# autodroid **Repository Path**: terminail/autodroid ## Basic Information - **Project Name**: autodroid - **Description**: A comprehensive container-based solution for automating third-party Android applications across multiple platforms. - **Primary Language**: Python - **License**: BSL-1.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-29 - **Last Updated**: 2025-12-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Cross-Platform Android App Automation Container Solution A comprehensive container-based solution for automating third-party Android applications across multiple platforms. ## Project Background With the growth of mobile application testing needs, there is a demand for an automated testing solution that can be deployed cross-platform, support multi-device concurrency, and is easy to manage. Traditional solutions have problems such as complex environment configuration, poor platform compatibility, and high maintenance costs. ## Solution Develop a cross-platform Android app automation framework based on container technology, implementing standard UI automation through **pure ADB commands** (removed Appium dependency), combined with a workplan system, to provide stable and reliable third-party APK automation testing capabilities. ## Core Values - 🐳 **Containerized Deployment**: Supports Docker and Podman, eliminating environment dependencies - 🖥️ **Full Platform Support**: macOS, Windows, WSL/Linux - 📱 **Non-intrusive**: No modification to target APKs, based on UI hierarchy analysis - 🔧 **Workplan System**: Supports scheduled tasks and event-driven testing - 📊 **Centralized Management**: Unified configuration management and result monitoring - ⚡ **Pure ADB Automation**: Removed Appium dependency for faster, more reliable execution - 🔧 **Simplified Architecture**: Direct device control without Appium server overhead ## Documentation - [Requirements](requirements.md) - Complete requirements specification - [Architecture](architecture.md) - System design documentation - [Technical Solution](technical-solution.md) - Technical implementation details - [Installation Guide](installation-guide.md) - Setup and deployment instructions - [Usage Guide](usage-guide.md) - User instructions - [Implementation Plan](implementation-plan.md) - Development roadmap - [Appendix](appendix.md) - Additional reference materials ## Quick Start 1. Follow the [Installation Guide](installation-guide.md) to set up the environment 2. Connect your Android devices 3. Build and run the containers 4. Create your first test plan using the [Usage Guide](usage-guide.md) ## Recent Updates ### Server Connection Dynamic UI Update Fix - **Fixed**: NetworkService failure notification mechanism now properly updates UI status - **Fixed**: DashboardFragment mDNS discovery failure time calculation (removed hardcoded 56s) - **Enhanced**: Real-time status updates for Server Connection section - **Improved**: QR code button state management during discovery failures When mDNS discovery fails, the UI now correctly displays: - Status: "mDNS Failed after Xs" (X = actual elapsed time) - Server IP: "Discovery failed" - Server Status: "FAILED" - QR Code Button: Enabled and shows "Scan QR Code" ## Key Success Factors 1. **Standardization**: Unified workflow definition and configuration management 2. **Automation**: Minimize manual intervention to the greatest extent 3. **Extensibility**: Modular design supports function expansion 4. **Usability**: Complete toolchain and documentation support Through this solution, teams can efficiently conduct automated testing of third-party APKs, improving testing efficiency and quality assurance levels.