You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							106 lines
						
					
					
						
							3.5 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							106 lines
						
					
					
						
							3.5 KiB
						
					
					
				
								#!/bin/bash
							 | 
						|
								
							 | 
						|
								# Android Emulator Launch Options Helper
							 | 
						|
								# Lists all available launch scripts and their purposes
							 | 
						|
								# Author: Matthew Raymer
							 | 
						|
								
							 | 
						|
								echo "🚀 Android Emulator Launch Options"
							 | 
						|
								echo "=================================="
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "📋 Available Launch Scripts:"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "1. 🎮 GPU Accelerated (Recommended)"
							 | 
						|
								echo "   ./launch-emulator-gpu.sh"
							 | 
						|
								echo "   - Full NVIDIA GPU acceleration with Vulkan"
							 | 
						|
								echo "   - Best performance for development"
							 | 
						|
								echo "   - Use when GPU binding works correctly"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "2. 🔧 Pure OpenGL Mode"
							 | 
						|
								echo "   ./launch-emulator-opengl.sh"
							 | 
						|
								echo "   - Pure OpenGL rendering (no Vulkan)"
							 | 
						|
								echo "   - Use when Vulkan+OpenGL mixed mode binds to Intel iGPU"
							 | 
						|
								echo "   - Good fallback for GPU binding issues"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "3. ⚡ ANGLE Mode"
							 | 
						|
								echo "   ./launch-emulator-angle.sh"
							 | 
						|
								echo "   - ANGLE (Almost Native Graphics Layer Engine)"
							 | 
						|
								echo "   - Better NVIDIA compatibility on Linux"
							 | 
						|
								echo "   - More stable rendering pipeline"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "4. 🛡️  Mesa Fallback"
							 | 
						|
								echo "   ./launch-emulator-mesa.sh"
							 | 
						|
								echo "   - Software rendering as last resort"
							 | 
						|
								echo "   - Use for stability testing"
							 | 
						|
								echo "   - More CPU intensive but very stable"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "5. 🌐 Network Fix Mode"
							 | 
						|
								echo "   ./launch-emulator-network-fix.sh"
							 | 
						|
								echo "   - Fixes DNS/network connectivity issues"
							 | 
						|
								echo "   - Resolves Play Services ANRs and timeouts"
							 | 
						|
								echo "   - Clean state with explicit DNS servers"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "6. 🔍 Network Verification"
							 | 
						|
								echo "   ./verify-emulator-network.sh"
							 | 
						|
								echo "   - Diagnoses network connectivity problems"
							 | 
						|
								echo "   - Tests DNS resolution and internet access"
							 | 
						|
								echo "   - Identifies root cause of ANRs"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "7. ⚡ Maximum Performance Mode"
							 | 
						|
								echo "   ./launch-emulator-max-performance.sh"
							 | 
						|
								echo "   - All performance optimizations enabled"
							 | 
						|
								echo "   - 8 CPU cores, 6GB RAM allocated"
							 | 
						|
								echo "   - Disabled unnecessary features"
							 | 
						|
								echo "   - Use only on high-end systems (16GB+ RAM)"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "🔍 Troubleshooting:"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "If experiencing ANRs and Play Services failures:"
							 | 
						|
								echo "1. Run network verification: ./verify-emulator-network.sh"
							 | 
						|
								echo "2. Try network fix mode: ./launch-emulator-network-fix.sh"
							 | 
						|
								echo "3. Clear Play Services cache if needed"
							 | 
						|
								echo "4. Check VPN/firewall settings on host"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "If emulator feels sluggish or GPU utilization is low:"
							 | 
						|
								echo "1. Check emulator banner for 'OpenGL Vendor=Google (NVIDIA)'"
							 | 
						|
								echo "2. Monitor GPU usage: nvidia-smi dmon -s u"
							 | 
						|
								echo "3. Try different GPU modes in order: GPU → OpenGL → ANGLE → Mesa"
							 | 
						|
								echo "4. See EMULATOR_TROUBLESHOOTING.md for detailed solutions"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "📊 Performance Expectations:"
							 | 
						|
								echo ""
							 | 
						|
								echo "Hardware Acceleration (NVIDIA):"
							 | 
						|
								echo "  - GPU Utilization: 20-60%"
							 | 
						|
								echo "  - UI Responsiveness: Smooth, 60fps"
							 | 
						|
								echo "  - Startup Time: 30-60 seconds"
							 | 
						|
								echo ""
							 | 
						|
								echo "Software Rendering (Mesa):"
							 | 
						|
								echo "  - CPU Usage: 50-80%"
							 | 
						|
								echo "  - UI Responsiveness: Slower, 30fps"
							 | 
						|
								echo "  - Startup Time: 60-120 seconds"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "📚 Documentation:"
							 | 
						|
								echo "  - SETUP_GUIDE.md - Complete setup instructions"
							 | 
						|
								echo "  - EMULATOR_TROUBLESHOOTING.md - GPU binding solutions"
							 | 
						|
								echo "  - README.md - Project overview and quick start"
							 | 
						|
								echo ""
							 | 
						|
								
							 | 
						|
								echo "🎯 Quick Start:"
							 | 
						|
								echo "  1. If ANRs/Play Services issues: ./verify-emulator-network.sh"
							 | 
						|
								echo "  2. If network issues: ./launch-emulator-network-fix.sh"
							 | 
						|
								echo "  3. For GPU issues: ./launch-emulator-gpu.sh"
							 | 
						|
								echo "  4. If GPU binding issues: ./launch-emulator-opengl.sh"
							 | 
						|
								echo "  5. For maximum performance: ./launch-emulator-max-performance.sh"
							 | 
						|
								echo "  6. Last resort: ./launch-emulator-mesa.sh"
							 | 
						|
								
							 |