Introduce server TTS support and engine selection while keeping
device TTS as the default.
- Add new persistence keys for storing TTS engine and selected
server voice (ttsEngine, ttsServerVoiceId, ttsServerVoiceName).
- Extend TextToSpeechService to support two engines:
TtsEngine.device (FlutterTts) and TtsEngine.server (remote audio).
- Wire in an AudioPlayer and optional ApiService to fetch raw
audio bytes from the server and play them, with event hooks
mapped to existing lifecycle callbacks.
- Implement fallback to device TTS on server errors or empty
responses, and ensure player lifecycle (pause/stop/dispose)
is handled when using server engine.
- Allow engine and preferred voice to be configured before
initialization and updated at runtime via updateSettings.
This enables selecting a server-side voice and using a remote
TTS provider while preserving compatibility with the existing
device TTS implementation.
- Eliminated edge-to-edge support configurations from styles.xml files for various Android API levels.
- Removed unnecessary AndroidX dependencies related to edge-to-edge support from build.gradle.kts.
- Updated release notes to reflect the version bump to 2.1.7.
- Replaced multiple splash and launcher images across various resolutions to enhance the app's visual identity.
- Adjusted the splash screen background color in styles.xml for a more cohesive appearance.
- Updated icon assets for iOS to ensure consistency with the new branding guidelines.
- Added functionality to write changelog links for Android releases in Fastfile.
- Updated iOS Fastfile to generate release notes with the new version link.
- Modified Info.plist to include encryption declaration.
- Removed Apple ID from Appfile for security reasons.
- Added precheck option in Deliverfile to disable pre-submit checks.
- Enhanced Fastfile with a new release lane for App Store Connect API key integration.
- Updated the Deliverfile to submit for review and skip metadata and screenshots.
- Removed outdated build lane from Fastfile.
- Refactored API service to eliminate fallback to latest assistant message, addressing duplication issues in multi-turn conversations.
- Updated image paths in README to reflect new locations.
- Removed outdated localization guidelines and related documentation files.
- Deleted unused metadata files for app descriptions and screenshots.
- Integrated BackgroundTasks framework in iOS to manage background processing for audio streams.
- Added methods to register, schedule, and handle background tasks, allowing streams to continue for extended periods.
- Enhanced the BackgroundStreamingHandler to support background task notifications and keep-alive signals.
- Updated Info.plist to permit background task identifiers, ensuring compliance with iOS requirements.
- Improved the PersistentStreamingService to handle background task extensions and keep-alive signals effectively, enhancing overall streaming reliability.