A lightweight Android overlay app that displays a semi-transparent reference image on top of other apps. Perfect for drawing, tracing, comparing images, or any task requiring a visual reference overlay.
- Floating Overlay: Display any image as a semi-transparent overlay on top of other apps
- Adjustable Opacity: Control transparency from 0% to 100%
- Lock Mode: Enable passthrough to interact with apps below the overlay
- Edit Mode: Drag, zoom, rotate, and position the image
- Share Integration: Start overlay directly from any app's share menu
- Minimal Size: Optimized APK under 2MB
- Clean UI: Only used XML/Kotlin
- Android 7.0 (API 24) or higher
- Overlay permission (requested on first use)
- Download the APK from Releases
- Install the APK on your device
- Grant overlay permission when prompted
- Open Floating Ghost Image
- Tap the image preview area to select an image
- Tap the START button
- Grant overlay permission if prompted
- The app minimizes and shows a small floating icon
- Tap the icon to show/hide the image
- Long press the floating icon to open controls
- Drag the icon to reposition it
- Use the opacity slider to adjust transparency
- Toggle the lock switch:
- ON (locked): Image is passthrough - touches go through to apps below
- OFF (unlocked): You can drag, zoom, and rotate the image
- Tap the back button to return to icon-only mode
- Tap the close button to stop the overlay
- Open any app with an image (Gallery, Browser, etc.)
- Tap the Share button
- Select Floating Ghost Image from the share menu
- The overlay starts automatically with your image
- Floating Icon: Tap to show/hide image, long press to edit, drag to move
- Opacity Slider: Adjust image transparency (0-100%)
- Lock Switch: Enable/disable passthrough mode
- Back Button: Return to icon-only mode
- Close Button: Stop the overlay completely
This app has been heavily optimized for minimal APK size:
- ProGuard/R8 code shrinking and obfuscation
- Resource shrinking (removes unused resources)
- Removed xxxhdpi and xxhdpi icon densities
- Vector drawables only (no PNG assets)
- Minimal dependencies (only essential AndroidX libraries)
- Aggressive ProGuard rules (removes debug logging)
- Native library compression disabled (
extractNativeLibs=false) - Build features optimization (disabled unused features)
- Minimum SDK: 24 (Android 7.0)
- Target SDK: 36 (Android 15)
- Language: Kotlin
- Architecture: Single activity + foreground service
- Permissions:
SYSTEM_ALERT_WINDOW(overlay permission)
app/
├── src/main/
│ ├── java/com/rvoidex7/floatingghostimage/
│ │ ├── MainActivity.kt # Main UI screen
│ │ └── FloatingImageService.kt # Overlay service
│ ├── res/
│ │ ├── drawable/ # Vector drawables
│ │ ├── layout/ # XML layouts (2 files)
│ │ ├── mipmap-*/ # App icons (mdpi to xhdpi)
│ │ └── values/ # Colors, strings, themes
│ └── AndroidManifest.xml
├── build.gradle.kts # App-level build config
└── proguard-rules.pro # ProGuard optimization rules
- Android Studio Arctic Fox or newer
- JDK 11 or higher
- Android SDK with API 36
- Clone the repository:
git clone https://github.com/rvoidex7/floating-ghost-image.git
cd floating-ghost-image- Create
gradle.propertiesfile:
# Copy the example file
cp gradle.properties.example gradle.propertiesThe example file contains all necessary Gradle settings. Release signing configuration is only needed by the maintainer - contributors can skip those lines and use debug builds.
# Build debug APK
./gradlew assembleDebug
# Install to connected device
./gradlew installDebug
# Run on connected device
./gradlew installDebug
adb shell am start -n com.rvoidex7.floatingghostimage/.MainActivityThe debug APK will be located at app/build/outputs/apk/debug/app-debug.apk
Note: Release builds are signed by the maintainer. Contributors should use debug builds for development and testing.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is open source and available under the MIT License.
- Initial release
- Basic overlay functionality
- Lock/Edit mode toggle
- Image sharing support
- Size optimizations (APK under 2MB)
- GitHub Issues: Report a bug
- GitHub Discussions: Ask questions
Developed by @rvoidex7
This app:
- Does NOT collect any user data
- Does NOT require internet permission
- Does NOT use analytics or tracking
- Only accesses images you explicitly select
- Stores no data outside of temporary image URIs
All processing happens locally on your device.


