Releases: Sirpixelalot/Rentool
Release list
1.7.3
APK Compression
- Compress Ren'Py APKs directly - reduce game file sizes for less storage usage
- Smart detection automatically identifies Ren'Py APKs
- Select game folders OR APK files for compression
- Compressed APKs are properly signed and installable
Keystore Management System
- Create and save persistent signing keys for your APKs
- Import/export keystores for backup and sharing across devices
- Use existing saved keys or generate random one-time keys
- Warning system prevents common signing mistakes that break app updates
Settings Page
- New dedicated settings screen for app configuration
- Easy theme switching (Light/Dark/System)
- Centralized preferences management
Improvements
Massive APK Size Reduction
- Rentool app size reduced (125MB → 88MB)
- Enabled code minification with comprehensive optimization
1.7.2
New Features:
- Background Operations: Operations continue when app is minimized or screen is off
- Persistent Notifications: Real-time progress updates in status bar showing file count, current file, and percentage
- Foreground Service: OperationService manages all long-running operations (extract, compress, decompile, create)
- Completion Notifications: Dismissible notifications remain visible after operations complete for easy review
1.7.1
Bug Fixes:
- Wire up imageMethod speed setting in ImageCompressor (Fast/Average/Slow compression)
- Wire up createRpaAfter setting to automatically create RPA archives after compression
- Add validation to prevent compression when all media types are disabled
- Move progress polling to Dispatchers.IO to prevent UI freezing and ANRs
- Fix compression stats to track real totals and handle failures correctly
- Make file filtering case-insensitive for all extensions (.RPA, .RPYC, .RPY, etc.)
Technical Improvements:
- ImageCompressor now respects imageMethod setting for lossless compression effort
- CompressionManager tracks actual file counts (X/Y files) instead of misleading 100%
- Failed file compressions count original size (accurate reduction percentage)
- Empty folders/disabled types treated as graceful success instead of failure
- Progress updates show real progress with failed file counts
- All I/O operations moved off main thread (countRpycFiles, file reads, etc.)
1.7
Added comprehensive game compression with image, audio, and video support
Features:
- Image compression using native Android Bitmap APIs with WebP format (lossless/lossy)
- Audio compression using FFmpeg-Kit with Opus codec
- Video compression using FFmpeg-Kit with h264_mediacodec (hardware acceleration)
- Compression settings dialog with quality controls for all media types
- Support for transparent images (RGBA preserved in WebP)
Bug Fixes:
- Fixed batch extraction/creation progress counter not updating during operation
- Modified Python rpa_wrapper.py to accept and preserve batch information
- Updated MainViewModel to pass batch info (index, total, filename) to Python
- Python now includes batch info in all progress updates
- ProgressViewModel simplified to read batch index directly from ProgressData
1.6.2
Migrate UpdateChecker to Kotlin and cleanup unused Java files
- Rewrote UpdateChecker from Java to Kotlin using modern coroutines and sealed classes (update function was broken on previous releases)
- Rewrote VersionInfo as Kotlin data class with property getters
- Updated MainActivity to use new sealed class-based update result handling
- Deleted unused Java files:
- RpaFileHelper.java (not referenced anywhere)
- RpyEditorActivity.java (replaced by RpyEditorActivityNew.kt)
- Test template files (ExampleUnitTest.java, ExampleInstrumentedTest.java)
- Removed old editor layout (activity_rpy_editor.xml)
- Removed old RpyEditorActivity registration from AndroidManifest.xml
1.6.1
Fix editor status not updating and last folder not being remembered
- Fixed editor card in main menu not showing last edited file after editing
- Fixed file picker not remembering last folder location when clicking Edit RPY again
- Added SharedPreferences persistence to RpyEditorActivityNew to save last edited file and folder paths
1.6
completely overhauled the editor ui and added several features including, a tab button, undo, search, last file edited and a few other QOL changes
v1.5
Major refactoring to modernize the codebase:
-
Migrated Java activities to Kotlin
- MainActivity.kt with Compose UI
- FilePickerActivity.kt with Compose UI
- ProgressActivity.kt with Compose UI
-
Implemented MVVM architecture with ViewModel pattern
- MainViewModel with StateFlow for reactive state management
- FilePickerViewModel for file navigation state
- ProgressViewModel with coroutine-based polling
-
Migrated all UI to Jetpack Compose
- Dark theme with Purple80 accent colors
- Custom composables in ui/ package
- Removed legacy XML layouts
-
Fixed batch progress bug: When multiple RPA files are selected,
the progress screen now correctly displays batch information
(e.g., "Extracting RPA... (2 of 5)") using ViewModel state
1.4
- Added Ren'Py syntax highlighting to .rpy editor using TextMate
- Integrated custom dark theme for syntax colors
- Implemented last edited file tracking
- Enhanced Edit RPY card with status display
1.3
Migrated app to Material 3 for a more modern and polished user interface with improved dialogs, typography, and visual components.