PhoneClaw requires several Android permissions to function properly. This guide explains each permission, why it’s needed, and how to grant it.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/rohanarun/phoneclaw/llms.txt
Use this file to discover all available pages before exploring further.
Critical Permissions
These permissions are essential for PhoneClaw’s core functionality:Accessibility Service
Purpose: Allows PhoneClaw to interact with screen elements, simulate taps, and automate UI interactions. How to Enable:- Open Android Settings
- Navigate to Accessibility
- Find “PhoneClaw” or your app name
- Toggle the accessibility service ON
- Confirm the permission prompt
AndroidManifest.xml:89-104:
Screen Capture / Media Projection
Purpose: Enables PhoneClaw to capture screenshots for visual AI analysis and debugging. Required For:- Moondream visual element detection
- Debug mode screenshot uploads
- Screen context for AI generation
- PhoneClaw will prompt for screen capture permission on first launch
- Grant permission in the system dialog
- This permission is requested at runtime
Voice & Audio Permissions
Microphone (RECORD_AUDIO)
Purpose: Enables voice commands and push-to-talk functionality. How to Enable:- PhoneClaw requests this permission at runtime
- Grant permission when prompted
- Required for speech recognition
AndroidManifest.xml:21:
- Push-to-talk button (MainActivity.kt:1096-1126)
- Continuous voice listening
- Speech-to-text processing
The app uses Android’s built-in SpeechRecognizer, which handles voice processing on-device when possible.
Location Permissions
Fine & Coarse Location
Purpose:- WiFi network scanning (required for programmatic WiFi connections)
- Device location tracking for phone info
- Geolocation features
AndroidManifest.xml:17-18:
- Requested at runtime when needed
- Go to Settings > Apps > PhoneClaw > Permissions > Location
- Select “Allow all the time” or “Allow only while using the app”
Network Permissions
Internet & Network State
FromAndroidManifest.xml:8-10:
- OpenRouter API communication
- Firebase cloud features
- Moondream API requests
- WiFi network management
WiFi Permissions
FromAndroidManifest.xml:13-15:
- Programmatic WiFi connections
- Network scanning
- Nearby device detection
Optional Permissions
These permissions enable additional features but aren’t required for core functionality:Phone & SMS
Camera
Storage
Bluetooth
Notification Access
Granting Permissions
First Launch
On first launch, PhoneClaw will guide you through:- Screen Capture Permission - Immediate prompt
- Accessibility Service - Redirects to Settings
- Microphone Permission - When tapping voice button
- Location Permission - If using WiFi features
Manual Permission Management
Via Android Settings:- Open Settings
- Go to Apps > PhoneClaw
- Tap Permissions
- Enable required permissions
Some permissions like BIND_ACCESSIBILITY_SERVICE cannot be granted via ADB and must be enabled through Settings.
Permission Request Flow
PhoneClaw handles permission requests gracefully:- Check if permission is granted (MainActivity.kt:1085-1093)
- Request permission if needed (MainActivity.kt:1091)
- Handle permission result (MainActivity.kt:1003-1007)
- Provide feedback via Text-to-Speech
Troubleshooting
Accessibility Service Won’t Enable
- Try restarting your device
- Clear app cache and data
- Reinstall PhoneClaw
- Check for Android system updates
Screen Capture Not Working
- Verify media projection permission is granted
- Ensure no other screen recording app is active
- Check ScreenCaptureService is running
- Review logs for errors
Microphone Permission Denied
- Go to Settings > Apps > PhoneClaw > Permissions
- Manually enable Microphone permission
- Restart the app
Location Permission Issues
- Settings > Apps > PhoneClaw > Permissions > Location
- Select “Allow all the time” or “Allow only while using the app”
- Some features may require “Allow all the time”
Security & Privacy
PhoneClaw requests extensive permissions for automation purposes. Here’s what you should know:- Local Processing: Voice recognition runs on-device when possible
- Screen Captures: Only uploaded to Firebase if debug mode is enabled
- Location Data: Used for device tracking in Firebase (optional)
- Open Source: Review the source code to verify permission usage
You can disable Firebase features entirely and use PhoneClaw in offline mode with local automation only.