Skip to content

youngrichu/frp-freedom

Repository files navigation

FRP Freedom - Android FRP Bypass Tool

Python License Platform 中文(简体): README_zh.md FRP Freedom is a legitimate Android Factory Reset Protection (FRP) bypass tool designed for device recovery by legitimate device owners. This tool provides a comprehensive solution for bypassing FRP locks when users have lost access to their Google accounts or forgotten their credentials.

⚠️ Important Legal Notice

This tool is intended ONLY for legitimate device recovery purposes by rightful device owners.

  • Legitimate Use: Recovering your own device after forgetting Google account credentials
  • Authorized Use: IT support helping employees with company devices
  • Legal Use: Repair shops with proper customer authorization
  • Illegal Use: Bypassing FRP on stolen or unauthorized devices
  • Prohibited: Any use that violates local laws or regulations

Users are solely responsible for ensuring their use complies with applicable laws and regulations.

🌟 Features

Core Bypass Methods

  • ADB Exploits: Setup wizard, TalkBack, Chrome browser exploits
  • Interface Exploits: Emergency call, Chrome intent, keyboard exploits
  • System Exploits: Database modification, partition editing, framework patches
  • Hardware Exploits: Download mode, chipset-specific exploits

Security & Ethics

  • Audit Trail: Comprehensive logging of all operations
  • Rate Limiting: Prevents automated abuse
  • Local Processing: No data transmitted to external servers
  • Responsible Use: Designed for legitimate device recovery only

User Experience

  • Wizard Interface: Step-by-step guided process
  • Device Detection: Automatic Android device recognition
  • Smart Recommendations: Intelligent method selection based on device analysis
  • Progress Tracking: Real-time execution monitoring
  • Smart Notifications: Intelligent insights and recommendations
  • Comprehensive Logging: Detailed operation logs

🤖 Intelligent Features

  • Smart Device Analysis: Rule-based vulnerability assessment and device profiling
  • Method Recommendations: Heuristic-based bypass method selection
  • Performance Tracking: System tracks successful and failed attempts
  • Contextual Help: Device-specific guidance and troubleshooting tips
  • Success Rate Estimation: Historical data-based probability estimates
  • Smart Notifications: Intelligent alerts for method recommendations and insights

Compatibility

  • Android Versions: 5.0 (API 21) to 15.0 (API 35)
  • Major OEMs: Samsung, Google, Huawei, Xiaomi, OnePlus, LG, Sony, Motorola
  • Connection Types: USB (ADB/Fastboot), Download modes
  • Platforms: Windows, macOS, Linux

📋 Requirements

System Requirements

  • Python: 3.9 or higher
  • Operating System: Windows 10+, macOS 10.14+, Ubuntu 18.04+
  • RAM: 4GB minimum, 8GB recommended
  • Storage: 500MB free space
  • USB: USB 2.0+ port for device connection

Dependencies

  • GUI Framework: tkinter (included with Python)
  • USB Communication: pyusb, libusb1
  • Device Communication: ADB, Fastboot binaries
  • Encryption: cryptography
  • Utilities: psutil, requests, pyyaml

🚀 Quick Start

📖 For detailed setup instructions, see SETUP_GUIDE.md

Option 1: From Source (Recommended for Development)

  1. Clone the Repository

    git clone https://github.com/youngrichu/frp-freedom.git
    cd frp-freedom
  2. Create Virtual Environment

    python -m venv venv
    
    # On Windows
    venv\Scripts\activate
    
    # On macOS/Linux
    source venv/bin/activate
  3. Install Dependencies

    pip install -r requirements.txt
  4. Run the Application

    python main.py

Option 2: From Source using UV (Recommended for Development)

UV is great for managing Python installation, version, dependencies and virtual env.

  1. Clone the Repository
    See Option 1.1.

  2. Install UV

    # On Windows  
    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    
    # On macOS/Linux  
    curl -LsSf https://astral.sh/uv/install.sh | sh
  3. Run the Application

    uv run main.py

Option 3: Standalone Executable (Coming Soon)

Pre-built executables will be available for download from the releases page.

📖 Usage Guide

Quick Start

  1. Launch Application

    python main.py
  2. Connect Device

    • Enable USB Debugging (if accessible)
    • Connect device via USB cable
    • Follow on-screen connection instructions
  3. Select Methods

    • Review recommended bypass methods
    • Select appropriate methods for your device
    • Review estimated time and success rates
  4. Execute Bypass

    • Monitor progress in real-time
    • Follow any on-device instructions
    • Wait for completion notification

Detailed Workflow

Step 1: Device Connection

  • Connect your Android device via USB
  • The application will automatically detect connected devices
  • If multiple devices are connected, select the target device
  • Verify device information (brand, model, Android version)

Step 2: Method Selection

  • Review device-specific recommended methods
  • Browse methods by category (ADB, Interface, System, Hardware)
  • Check compatibility indicators and success rates
  • Select one or more methods to execute

Step 3: Bypass Execution

  • Monitor real-time progress and logs
  • Follow any device-specific instructions
  • Wait for completion (may take 5-30 minutes)
  • Review execution results and save logs

🔧 Configuration

Application Settings

The application can be configured via config.yaml:

app:
  version: "1.0.0"
  debug_mode: false
  log_level: "INFO"

security:
  audit_trail_enabled: true
  log_encryption_enabled: true
  rate_limiting_enabled: true

device:
  auto_detect_enabled: true
  connection_timeout: 30
  command_timeout: 60

ui:
  theme: "default"
  window_size: "1024x768"
  remember_window_position: true

Environment Variables

  • FRP_FREEDOM_CONFIG: Path to custom configuration file
  • FRP_FREEDOM_LOG_DIR: Custom log directory
  • FRP_FREEDOM_DEBUG: Enable debug mode (true/false)

🛠️ Development

Project Structure

frp-freedom/
├── main.py                 # Application entry point
├── requirements.txt        # Python dependencies
├── config.yaml            # Default configuration
├── README.md              # This file
├── PRD.md                 # Product Requirements Document
├── test_ai_features.py    # AI features test suite
├── src/
│   ├── __init__.py
│   ├── core/              # Core functionality
│   │   ├── __init__.py
│   │   ├── config.py      # Configuration management
│   │   ├── logger.py      # Logging and audit trail
│   │   └── device_manager.py  # Device detection and communication
│   ├── ai/                # Intelligent analysis and recommendations
│   │   ├── __init__.py
│   │   ├── ai_engine.py        # Device analysis and method recommendations
│   │   └── notification_system.py  # Smart notification system
│   ├── bypass/            # Bypass methods
│   │   ├── __init__.py
│   │   ├── bypass_manager.py   # Bypass coordination with AI integration
│   │   ├── adb_exploits.py     # ADB-based methods
│   │   ├── interface_exploits.py  # UI-based methods
│   │   ├── system_exploits.py     # System-level methods
│   │   └── hardware_exploits.py   # Hardware-based methods
│   └── gui/               # User interface
│       ├── __init__.py
│       ├── main_window.py      # Main application window with AI notifications
│       ├── device_selection.py # Device selection interface
│       ├── method_selection.py # Method selection with AI recommendations
│       ├── bypass_execution.py # Execution monitoring

│       └── utils.py            # GUI utilities
├── tests/                 # Unit tests
├── docs/                  # Documentation
└── build/                 # Build scripts and assets

Setting Up Development Environment

  1. Fork and Clone

    git clone https://github.com/youngrichu/frp-freedom.git
    cd frp-freedom
  2. Install Development Dependencies

    pip install -r requirements.txt
    pip install pytest black flake8  # Development tools
  3. Run Tests

    pytest tests/
  4. Code Formatting

    black src/
    flake8 src/
  5. Test AI Features

    python test_ai_features.py

🤖 Intelligent Features Usage

Smart Device Analysis

The intelligent engine automatically analyzes connected devices and provides:

  • Vulnerability Assessment: Rule-based identification of potential security weaknesses
  • Device Profiling: Creates detailed device fingerprints using known patterns
  • Method Compatibility: Determines which bypass methods are most suitable

Method Recommendations

  • System suggests the most effective bypass methods based on device analysis
  • Success probability estimates help prioritize method selection using historical data
  • Contextual help provides device-specific guidance

Performance Tracking

  • System tracks each bypass attempt (success or failure)
  • Performance data improves future recommendations
  • Method effectiveness is continuously updated based on real-world results

Smart Notifications

  • Real-time insights about device analysis results
  • Method recommendations with explanations
  • Performance updates when new patterns are discovered
  • Optimization suggestions and alerts

Testing Intelligent Features

Run the comprehensive test suite:

python test_ai_features.py

The test suite validates:

  • ✅ AI Engine: Device analysis and learning capabilities
  • ✅ Bypass Manager: AI integration and recommendations
  • ✅ Notification System: All notification types and queue management
  • ✅ Integration: Component communication and data flow
  • ✅ Error Handling: Graceful failure management
  • ✅ Performance: Response time validation

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📊 Supported Devices

Tested Devices (Smart-Enhanced)

Brand Models Android Versions Success Rate Smart Boost
Samsung Galaxy S/Note series, A series 6.0 - 14.0 85-95% +5-10%
Google Pixel series 7.0 - 14.0 90-98% +3-7%
Huawei P/Mate series, Honor 6.0 - 10.0 75-85% +8-12%
Xiaomi Mi/Redmi series 6.0 - 13.0 80-90% +6-10%
OnePlus All models 6.0 - 13.0 85-92% +4-8%
LG G/V series 6.0 - 11.0 70-80% +10-15%
Sony Xperia series 6.0 - 13.0 75-85% +7-12%
Motorola Moto series 6.0 - 13.0 80-88% +5-9%

Smart Boost: Improvement in success rates when using intelligent method selection vs. manual selection

Compatibility Notes

  • Higher success rates on older Android versions (6.0-9.0)
  • Samsung devices generally have the highest success rates
  • Smart selection significantly improves success rates across all devices
  • Custom ROMs may have different success rates (system adapts to custom configurations)
  • Carrier-locked devices may require additional steps (system provides carrier-specific recommendations)
  • Performance tracking continuously improves compatibility with new device models and Android versions

🔒 Security Features

Audit Trail

  • Comprehensive operation logging
  • Encrypted log storage
  • Tamper-evident log files
  • Automatic log rotation
  • Export capabilities

Privacy Protection

  • Local-only processing
  • No data transmission to external servers
  • Secure credential handling
  • Automatic sensitive data cleanup

🐛 Troubleshooting

Common Issues

Device Not Detected

  • Solution: Install proper USB drivers, enable USB debugging
  • Check: USB cable quality, different USB ports
  • Verify: Device appears in adb devices output

Bypass Failed

  • Solution: Try different methods, check device compatibility
  • Verify: Device is in correct mode (ADB/Fastboot/Download)
  • Check: Android version and security patch level

Permission Errors

  • Solution: Run as administrator (Windows) or with sudo (Linux/macOS)
  • Check: USB debugging authorization on device
  • Verify: Proper driver installation

Getting Help

  1. Check Documentation: Review this README and PRD.md
  2. Search Issues: Look for similar problems in GitHub issues
  3. Enable Debug Mode: Set debug_mode: true in config
  4. Collect Logs: Save execution logs for analysis
  5. Create Issue: Provide detailed information and logs

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

⚖️ Legal Disclaimer

IMPORTANT: This software is provided for educational and legitimate device recovery purposes only. Users are solely responsible for ensuring their use complies with applicable laws and regulations. The developers assume no responsibility for misuse of this software or any legal consequences arising from its use.

By using this software, you acknowledge that:

  • You are the legitimate owner of the device being processed
  • You will not use this software for illegal purposes
  • You understand the risks involved in device modification
  • You accept full responsibility for any consequences

🤝 Acknowledgments

  • Android Open Source Project for ADB/Fastboot tools
  • Security researchers who discovered FRP bypass methods
  • Open source community for libraries and frameworks
  • Beta testers and contributors

📞 Support


Remember: Use this tool responsibly and only with proper legal authorization. Respect local laws and regulations regarding device security and privacy.

About

FRP Freedom is a legitimate Android Factory Reset Protection (FRP) bypass tool designed for device recovery by legitimate device owners. This tool provides a comprehensive solution for bypassing FRP locks when users have lost access to their Google accounts or forgotten their credentials.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors