mirror of
https://github.com/permissionlesstech/bitchat-android.git
synced 2026-07-24 23:45:19 +00:00
Fixes #472 - App crashing in debug settings The issue was in ui/debug/DebugSettingsSheet.kt: - Line 304: Code was pre-formatting double value with String.format() then passing to string resource that expected raw double parameter - Line 307: Numeric values weren't properly converted to strings for string resource that expected string parameters Changes made: - Changed stringResource(R.string.debug_target_fpr_fmt, String.format("%.2f", gcsFpr)) to stringResource(R.string.debug_target_fpr_fmt, gcsFpr) - passes raw double value - Changed stringResource(R.string.debug_derived_p_fmt, p, nmax) to stringResource(R.string.debug_derived_p_fmt, p.toString(), nmax.toString()) - properly converts numeric values to strings This resolves the IllegalFormatConversionException: f != java.lang.String crash when scrolling through the debug settings bottom sheet.
6.6 KiB
6.6 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
[1.4.0] - 2025-10-15
Fixed
- fix: Resolve debug settings bottom sheet crash on some devices (Issue #472)
- Fixed IllegalFormatConversionException in DebugSettingsSheet.kt when scrolling through debug settings
- Corrected string formatting for debug_target_fpr_fmt and debug_derived_p_fmt string resources
- Improved string resource parameter handling for numeric values
[0.7.2] - 2025-07-20
Fixed
- fix: battery optimization screen content scrollable with fixed buttons
[0.7.1] - 2025-07-19
Added
- feat(battery): add battery optimization management for background reliability
Fixed
- fix: center align toolbar item in ChatHeader - passed modifier.fillmaxHeight so the content inside the row can actually be centered
- fix: update sidebar text to use string resources
- fix(chat): cursor location and enhance message input with slash command styling
Changed
- refactor: remove context attribute at ChatViewModel.kt
- Refactor: Migrate MainViewModel to use StateFlow
Improved
- Use HorizontalDivider instead of deprecated Divider
- Use contentPadding instead of padding so items remain fully visible
and this project adheres to Semantic Versioning.
[0.7]
Added
- Location services check during app startup with educational UI
- Message text selection functionality in chat interface
- Enhanced RSSI tracking and unread message indicators
- Major Bluetooth connection architecture refactoring with dedicated managers
Fixed
- Critical: Android-iOS message fragmentation compatibility issues
- Fixed fragment size (500→150 bytes) and ID generation for cross-platform messaging
- Ensures Android can properly communicate with iOS devices
- DirectMessage notifications and text copying functionality
- Smart routing optimizations (no relay loops, targeted delivery)
- Build system compilation issues and null pointer exceptions
Changed
- Comprehensive dependency updates (AGP 8.10.1, Kotlin 2.2.0, Compose 2025.06.01)
- Optimized BLE scan intervals for better battery performance
- Reduced excessive logging output
Improved
- Cross-platform compatibility with iOS and Rust implementations
- Connection stability through architectural improvements
- Battery performance via scan duty cycling
- User onboarding with location services education
[0.6]
Added
- Channel password management with
/passcommand for channel owners - Monochrome/themed launcher icon for Android 12+ dynamic theming support
- Unit tests package with initial testing infrastructure
- Production build optimization with code minification and shrinking
- Native back gesture/button handling for all app views
Fixed
- Favorite peer functionality completely restored and improved
- Enhanced favorite system with fallback mechanism for peers without key exchange
- Fixed UI state updates for favorite stars in both header and sidebar
- Improved favorite persistence across app sessions
/wcommand now displays user nicknames instead of peer IDs- Button styling and layout improvements across the app
- Enhanced back button positioning and styling
- Improved private chat and channel header button layouts
- Fixed button padding and alignment issues
- Color scheme consistency updates
- Updated orange color throughout the app to match iOS version
- Consistent color usage for private messages and UI elements
- App startup reliability improvements
- Better initialization sequence handling
- Fixed null pointer exceptions during startup
- Enhanced error handling and logging
- Input field styling and behavior improvements
- Sidebar user interaction enhancements
- Permission explanation screen layout fixes with proper vertical padding
Changed
- Updated GitHub organization references in project files
- Improved README documentation with updated clone URLs
- Enhanced logging throughout the application for better debugging
0.5.1 - 2025-07-10
Added
- Bluetooth startup check with user prompt to enable Bluetooth if disabled
Fixed
- Improved Bluetooth initialization reliability on first app launch
0.5 - 2025-07-10
Added
- New user onboarding screen with permission explanations
- Educational content explaining why each permission is required
- Privacy assurance messaging (no tracking, no servers, local-only data)
Fixed
- Comprehensive permission validation - ensures all required permissions are granted
- Proper Bluetooth stack initialization on first app load
- Eliminated need for manual app restart after installation
- Enhanced permission request coordination and error handling
Changed
- Improved first-time user experience with guided setup flow
0.4 - 2025-07-10
Added
- Push notifications for direct messages
- Enhanced notification system with proper click handling and grouping
Improved
- Direct message (DM) view with better user interface
- Enhanced private messaging experience
Known Issues
- Favorite peer functionality currently broken
0.3 - 2025-07-09
Added
- Battery-aware scanning policies for improved power management
- Dynamic scan behavior based on device battery state
Fixed
- Android-to-Android Bluetooth Low Energy connections
- Peer discovery reliability between Android devices
- Connection stability improvements
0.2 - 2025-07-09
Added
- Initial Android implementation of bitchat protocol
- Bluetooth Low Energy mesh networking
- End-to-end encryption for private messages
- Channel-based messaging with password protection
- Store-and-forward message delivery
- IRC-style commands (/msg, /join, /clear, etc.)
- RSSI-based signal quality indicators
Fixed
- Various Bluetooth handling improvements
- User interface refinements
- Connection reliability enhancements
0.1 - 2025-07-08
Added
- Initial release of bitchat Android client
- Basic mesh networking functionality
- Core messaging features
- Protocol compatibility with iOS bitchat client