User Guide
WiFiCopy User Guide
Version: 1.7
Last Updated: October 6, 2025
๐ฅ Installation
From Google Play Store (Recommended)
- Open Google Play Store on your Android device
- Search for "WiFiCopy"
- Tap Install
- Wait for installation to complete
- Tap Open to launch the app
Manual Installation (APK)
- Download the latest APK from the official website
- Enable "Install from Unknown Sources" in Android Settings:
- Go to Settings โ Security โ Unknown Sources (Android 7-9)
- Or Settings โ Apps โ Special Access โ Install Unknown Apps (Android 10+)
- Open the downloaded APK file
- Tap Install
- Tap Open when installation completes
System Requirements
- Android Version: 7.0 (API 24, Nougat) or higher
- Target SDK: Android 14 (API 36)
- Storage: Minimum 50 MB free space
- Network: WiFi connection (for file transfers)
- Permissions: File access, network access (granted during setup)
๐ Quick Start Guide
Step 1: Grant Permissions
When you first open WiFiCopy, you'll be asked to grant permissions:
- File Access - Tap Allow to let WiFiCopy access your files
- On Android 13+, you can choose specific media types
- Notifications - Tap Allow to receive backup progress notifications
- WiFi State - Automatically granted for WiFi detection
Step 2: Choose Your Protocol
WiFiCopy supports three protocols:
- SMB - For Windows shares, NAS devices, Samba servers
- FTP - For FTP servers (unencrypted, use on trusted networks)
- SFTP - For SSH/SFTP servers (encrypted, recommended for security)
Tap the protocol selector at the top of the screen to choose.
Step 3: Configure Server Connection
For SMB (Windows/NAS):
- Tap "+ Add SMB Configuration"
- Fill in the details:
- Configuration Name: A friendly name (e.g., "Home NAS")
- Server Address: IP address or hostname (e.g.,
192.168.1.100ornas.local) - Share Name: The network share name (e.g.,
backup) - Username: Your SMB username
- Password: Your SMB password
- Domain: (Optional) Windows domain name
- Destination Path: Folder on the share (e.g.,
/phone-backup)
- Tap Test to verify the connection
- If successful, tap Save
For FTP:
- Tap "+ Add FTP Configuration"
- Fill in the details:
- Configuration Name: A friendly name (e.g., "FTP Server")
- Server Address: IP address or hostname
- Port: Usually
21for FTP - Protocol: Select FTP
- Username: Your FTP username
- Password: Your FTP password
- Destination Path: Target folder (e.g.,
/uploads)
- Tap Test to verify the connection
- If successful, tap Save
For SFTP (Secure):
- Tap "+ Add FTP Configuration"
- Fill in the details:
- Configuration Name: A friendly name (e.g., "SSH Server")
- Server Address: IP address or hostname
- Port: Usually
22for SFTP - Protocol: Select SFTP (SSH)
- Username: Your SSH username
- Password: Your SSH password
- Destination Path: Target folder (e.g.,
/home/user/backup)
- Tap Test to verify the connection
- On first connection, you'll see the SSH host key fingerprint
- Tap Trust to save the fingerprint (prevents man-in-the-middle attacks)
- If successful, tap Save
Step 4: Select Files to Copy
- Tap "Select Files" button
- Choose your selection method:
- Select Multiple Files - Pick individual files
- Select Folder - Choose an entire folder
- Browse and select your files/folders
- Selected files will appear in the "File Selection" card
Step 5: Start Copy
- Review your selected files and total size
- Ensure you've selected a server configuration
- Tap "Start Copy" button
- Monitor progress in the "Copy Progress" card
- You can Pause, Resume, or Cancel the operation
๐ Scheduled Backups
Creating a Scheduled Backup
- Tap the "Scheduled Backups" card
- Tap "+ Add Backup Job"
- Configure your backup:
- Job Name: Descriptive name (e.g., "Daily Photos")
- Protocol: Choose SMB, FTP, or SFTP
- Configuration: Select your saved server config
- Source Files: Select files/folders to backup
- Frequency: Choose backup interval:
- Every 2 Hours
- Every 6 Hours
- Every 12 Hours
- Daily
- Weekly
- Monthly
- Start on Boot: Enable to auto-start after device reboot
- WiFi Trigger: Enable to run when specific WiFi network is available
- Tap Save
Managing Scheduled Backups
- Run Now - Tap to execute backup immediately
- Edit - Tap to modify backup settings
- Delete - Tap to remove the backup job
- Enable/Disable - Toggle to activate/deactivate without deleting
Monitoring Scheduled Backups
- Active scheduled backups show a notification icon
- Tap the notification to see backup progress
- Backups run in the background even when app is closed
- Notifications show completion status
๐ง Advanced Features
File Selection Options
Add More Files:
- Tap "Add More" in the File Selection card
- Add additional files to your current selection
Share File List:
- Tap "Share List" to export your file selection
- Share via email, messaging, or save as text file
Clear Selection:
- Tap the X icon next to individual files to remove them
- Or select new files to replace the current selection
Configuration Management
Edit Configuration:
- Tap the Edit icon on any saved configuration
- Modify settings as needed
- Tap Test to verify changes
- Tap Save to update
Delete Configuration:
- Tap the Delete icon on any saved configuration
- Confirm deletion
- Note: This doesn't delete scheduled backups using this config
Test Connection:
- Tap Test in any configuration dialog
- Verifies server connectivity
- Shows success/failure message
Copy Progress Controls
Pause/Resume:
- Tap Pause to temporarily stop the copy operation
- Tap Resume to continue from where you paused
Cancel:
- Tap Cancel to stop and abort the copy operation
- Partially copied files may remain on the server
Retry:
- After a failed or cancelled copy, tap Retry
- Restarts the copy operation from the beginning
SFTP Host Key Management
Current Status: โ ๏ธ Host key verification is currently disabled in this version to prevent connection hangs.
How SFTP Connections Work:
- SFTP connections proceed without host key verification
- This allows connections to work reliably without blocking
- Security note: This means the app cannot detect man-in-the-middle attacks on SFTP connections
For Maximum Security:
- Use SFTP only on trusted networks (home WiFi, VPN)
- Verify server identity through other means if needed
- Future versions will re-enable host key verification with improved implementation
Technical Details:
- Host key verification feature exists in the codebase but is disabled
- The
SftpHostKeyRepositoryand verification dialogs are present but not active - This was disabled to resolve connection hanging issues
- Re-enabling is planned for a future update with proper non-blocking implementation
Alternative Security:
- SFTP still provides full SSH encryption for data in transit
- Username/password authentication is still required
- Use strong passwords for SFTP accounts
- Consider using SMB3 with encryption if host key verification is critical
๐ Language Settings
Changing App Language (Android 13+)
- Open Android Settings
- Go to Apps โ WiFiCopy
- Tap Language
- Select your preferred language from the list
- App language changes immediately
Changing App Language (Android 12 and below)
The app follows your system language setting:
- Open Android Settings
- Go to System โ Languages & Input
- Change system language
- Reopen WiFiCopy
Fully Supported Languages (100% Translated)
WiFiCopy is available in 12 languages with complete translations:
| Language | Native Name | Code |
|---|---|---|
| ๐ฌ๐ง English | English | en |
| ๐ช๐ธ Spanish | Espaรฑol | es |
| ๐ต๐น Portuguese | Portuguรชs | pt |
| ๐ฉ๐ช German | Deutsch | de |
| ๐ซ๐ท French | Franรงais | fr |
| ๐ฎ๐น Italian | Italiano | it |
| ๐ฎ๐ฉ Indonesian | Bahasa Indonesia | id |
| ๐ฎ๐ณ Hindi | เคนเคฟเคจเฅเคฆเฅ | hi |
| ๐ฏ๐ต Japanese | ๆฅๆฌ่ช | ja |
| ๐ฐ๐ท Korean | ํ๊ตญ์ด | ko |
| ๐จ๐ณ Chinese (Simplified) | ็ฎไฝไธญๆ | zh-CN |
Translation Coverage:
- โ All UI elements and buttons
- โ All dialogs and messages
- โ All error messages and notifications
- โ All configuration screens
- โ All help text and descriptions
- โ Complete accessibility support
Note: The app automatically displays in your device's language if supported, or defaults to English.
๐ Security & Privacy
Credential Storage
- All passwords are encrypted with AES-256-GCM encryption
- Encryption keys are stored in Android's hardware-backed Keystore
- Credentials are never stored in plaintext
- SMB and FTP passwords stored in separate encrypted containers
Data Privacy
- No data collection - Zero analytics or tracking
- No advertising ID - App does not use or access advertising identifiers
- No third-party SDKs - No analytics, crash reporting, or ad libraries
- No internet connection - App works entirely offline (except for server connections)
- Local processing only - All operations on your device
- No cloud services - Direct connection to your servers
- Production builds - Code obfuscated with R8 for additional security
Backup Security
- Sensitive data excluded from Android Auto Backup
- Passwords, configurations, and keys not backed up
- Reinstalling requires re-entering credentials (security best practice)
Network Security
- SMB3 encryption supported (auto-negotiated)
- SFTP provides full SSH encryption
- FTP is unencrypted (use only on trusted networks)
- Host key verification prevents man-in-the-middle attacks (SFTP)
โ Troubleshooting
Connection Issues
"Connection failed" error:
- Verify server address and port are correct
- Ensure server is powered on and accessible
- Check firewall settings on server
- Verify username and password are correct
- For SMB: Check share name and permissions
- For FTP: Ensure FTP service is running
- For SFTP: Verify SSH service is running on port 22
"Network unreachable" error:
- Ensure device is connected to WiFi
- Verify device and server are on same network
- Check router settings and network configuration
- Try pinging server from another device
SMB "Authentication failed" error:
- Verify username and password
- Check domain name (if applicable)
- Ensure SMB user has share permissions
- Try without domain if connection fails
FTP "501 Server can't accept argument" error:
- Server may have strict command parsing
- App automatically tries fallback methods
- If persistent, contact server administrator
SFTP connection hangs or times out:
- Ensure SSH service is running on port 22 (or configured port)
- Check firewall allows SSH connections
- Verify username and password are correct
- Try increasing connection timeout in configuration
- Note: Host key verification is currently disabled, so this error won't occur
File Transfer Issues
"Permission denied" error:
- Verify user has write permissions on destination
- Check destination path exists
- For SMB: Ensure share permissions allow write
- For FTP/SFTP: Check folder permissions
"No files to copy" error:
- Ensure you've selected files in File Selection card
- Verify files are accessible (not deleted)
- Check file permissions on device
Transfer stops or fails:
- Check WiFi connection stability
- Ensure sufficient disk space on server
- Verify server isn't blocking large transfers
- Check server logs for errors
Scheduled Backup Issues
Backup not running:
- Verify backup job is enabled (toggle on)
- Check WiFi trigger settings if enabled
- Ensure device isn't in battery saver mode
- Grant background execution permission
- Check notification settings are enabled
- Disable battery optimization for WiFiCopy (Settings โ Battery)
Backup runs but fails:
- Verify server configuration is correct
- Test connection manually
- Check server is accessible at scheduled time
- Review notification for error details
- Check server logs for connection issues
Backup doesn't restore after update:
- App automatically restores on update (v1.1.2+)
- If not working, manually toggle backup off/on
- Check app has boot permission (for auto-restore)
Folder backups not capturing new files:
- Ensure you selected a folder (not individual files)
- Folder permissions must remain granted
- New files added to selected folders are automatically included (v1.7+)
- Hidden files (starting with '.') are skipped
Performance Issues
Slow transfer speeds:
- WiFi signal strength affects speed
- Server disk speed impacts performance
- Network congestion can slow transfers
- Try transferring smaller batches
App crashes or freezes:
- Ensure device has sufficient RAM
- Close other apps to free memory
- Clear app cache in Android settings
- Reinstall app if problem persists
๐ก Tips & Best Practices
For Best Performance
- Use WiFi 5GHz - Faster than 2.4GHz for large transfers
- Keep device awake - Enable "Stay awake while charging" in Developer Options
- Stable connection - Stay close to WiFi router during transfers
- Batch transfers - Transfer related files together for efficiency
For Security
- Use SFTP - Encrypted transfers for sensitive data
- Strong passwords - Use complex passwords for server access
- Trusted networks - Only use on trusted WiFi networks
- Regular updates - Keep app updated for security patches
- Verify host keys - Always verify SFTP fingerprints on first connection
For Scheduled Backups
- Test first - Run manual backup before scheduling
- WiFi-only - Enable WiFi trigger to save mobile data
- Off-peak hours - Schedule during low-usage times
- Monitor notifications - Check backup completion status
- Start on boot - Enable for automatic restoration after reboot
For Reliability
- Save configurations - Keep server configs for reuse
- Descriptive names - Use clear names for configs and backups
- Test connections - Verify before important transfers
- Check permissions - Ensure proper file/folder access
- Monitor progress - Watch copy progress for large transfers
๐ Support & Help
Getting Help
In-App Support:
- Tap Support link at bottom of main screen
- Opens support website with documentation
Website:
- Visit: https://www.wificopy.app
- Documentation, FAQs, and guides available
Privacy Policy:
- Tap Privacy Policy link in app
- Opens detailed privacy information
Open Source Licenses:
- Tap View Licenses button in app
- Shows all third-party library licenses
Reporting Issues
When reporting issues, include:
- App version (Settings โ About)
- Android version
- Device model
- Server type (SMB/FTP/SFTP)
- Error message (if any)
- Steps to reproduce
Feature Requests
We welcome feature suggestions:
- Visit support website
- Describe your use case
- Explain desired functionality
๐ Additional Resources
Protocol Information
SMB (Server Message Block):
- Used by: Windows, NAS devices, Samba servers
- Ports: 445 (SMB), 139 (NetBIOS)
- Encryption: SMB3 supports encryption
- Best for: Windows networks, home NAS
FTP (File Transfer Protocol):
- Used by: FTP servers, web hosting
- Port: 21 (default)
- Encryption: None (unencrypted)
- Best for: Internal networks, legacy systems
SFTP (SSH File Transfer Protocol):
- Used by: Linux servers, SSH servers
- Port: 22 (default)
- Encryption: Full SSH encryption
- Best for: Secure transfers, cloud servers
Network Configuration
Finding Server IP Address:
Windows:
- Open Command Prompt
- Type:
ipconfig - Look for IPv4 Address
Mac/Linux:
- Open Terminal
- Type:
ifconfigorip addr - Look for inet address
Router:
- Access router admin page
- Check connected devices list
- Find device by name
Configuring SMB Share (Windows):
- Right-click folder โ Properties
- Go to Sharing tab
- Click Advanced Sharing
- Check "Share this folder"
- Set permissions
- Note share name
Configuring FTP Server:
- Varies by server software
- Ensure FTP service is running
- Configure user accounts
- Set folder permissions
- Open firewall port 21
Configuring SFTP (Linux):
- Install OpenSSH:
sudo apt install openssh-server - Start service:
sudo systemctl start ssh - Configure: Edit
/etc/ssh/sshd_config - Create user account
- Set folder permissions
๐ Version History
v1.7 (Current - October 2025)
- Enhanced security logging with SecureLog utility
- ProGuard/R8 obfuscation for production builds
- Improved credential protection
- Code shrinking and resource optimization
- Multi-language support (12 languages)
- Per-app language preferences (Android 13+)
- Enhanced SMB3 encryption detection
- Dynamic folder backup (captures new files)
- Improved scheduled backup reliability
- Better notification management
- UI/UX improvements and translations
v1.1.2
- Automatic scheduler restoration
- Last protocol memory
- Enhanced security logging
- Hardware-backed encryption
- OWASP compliance
v1.1.1
- Scheduled backup queueing
- Manual backup priority
- Bug fixes and improvements
v1.0.0
- Initial release
- SMB, FTP, SFTP support
- Scheduled backups
- File selection
๐ License & Credits
WiFiCopy
- Developer: Keith Neilson
- License: Proprietary
- Website: https://www.wificopy.app
Open Source Libraries:
- SMBJ - SMB protocol implementation
- Apache Commons Net - FTP protocol
- JSch - SFTP/SSH implementation
- Android Security Crypto - Encryption
- WorkManager - Background jobs
Full license information available in app via "View Licenses" button.
Thank you for using WiFiCopy! ๐
For the latest updates, visit: https://www.wificopy.app