Releases: Stypox/dicio-android
Releases · Stypox/dicio-android
v2.0 - Wake word
New
- Add wake word recognition in the background #236
- You can now start Dicio by saying "Hey Dicio" even while the phone is turned off
- The used AI model is OpenWakeWord, a huge thank you to them for the excellent work!
- Play configurable sound when Dicio starts listening #236
Improved
- Better reporting of download and unzip progress
Fixed
- Fix Dicio's STT popup not returning any result causing Firefox to crash
v1.1 - Voice Input
New
- Dicio can now be used as Voice Input in Android settings #227 (thanks @nebkrid!)
- The voice command button on (Bluetooth) headsets will now trigger Dicio #228
Improved
- Rename STT service to STT popup
Fixed
- Fix reference words not being normalized
- [Vosk] Fix pressing STT microphone while still loading
Localization
- New language available: Ukrainian 🇺🇦 #222 (thanks @balaraz!)
- Translate navigation skill in Russian #188 (thanks @Shura0!)
- Improve French and German translations #225 #210 (thanks @AgentSteel and @tiptoptom!)
- Improve README documentation
Development
- Fix tests not compiling #230 (thanks @Martin-Laclaustra!)
- Add GitHub actions to build app, generate screenshots, publish GitHub release and publish to Play Store
v1.0 - Huge refactor
New
- Adopt Material 3 design with black and dynamic themes
- Migrate code to Jetpack Compose and other modern libs
- Faster and more accurate sentence recognition algorithm
- Simpler and more powerful Skill APIs
- Add launcher shortcut to open Speech To Text service
Improved
- [Vosk] Report more status information in STT button:
- Target Android 14 (API 34)
- Group interactions better and add loading box in home screen
Fixed
- [Vosk] Fix Vosk model not downloading on some phones, by ditching Android's
DownloadManager
and using a network request directly - Fix various UI crashes thanks to the null safety of Kotlin and to the better Skill APIs design
Development
- Adopt Jetpack Compose for declarative UI
- Use the Model-View-ViewModel architectural pattern to separate business logic from UI code
- Adopt Hilt for Dependency Injection
- Migrate from SharedPreferences to protobuf-backed DataStore
- Move dicio-skill from separate repository to Gradle module
:skill
in this repo - Create
:sentences-compiler-plugin
to generate type-safe Kotlin skill standard recognizer definitions based onskill_definitions.yml
and on translated sentences inLANG/SKILL_ID.yml
files - Migrate from Gradle DSL (
.gradle
) to Kotlin DSL (.gradle.kts
) - Adopt Version Catalog to store the versions of dependencies
- Ditch Jitpack for building other
dicio-*
libraries, and useme.champeau.includegit
instead
v0.10 - Use Kotlin, timer improvements
New
- The project was converted from Java to Kotlin, if you notice issues please report them! #157 (thanks to @Doomsdayrs for the input)
- [Timer] The ringtone now plays in a loop for 30s, or until the user interrupts it
Improved
- Capture errors when generating output
- Target Android 13 Tiramisu (API 33)
Localization
0.9 - New logo, navigation skill
New
- New logo! Thanks to everyone involved in #74
- [Navigation] Add basic navigation skill #113 (thank you @primesun!)
- [Current time] Add French translation #123 (thank you @MXC48-zz and @Phyks!)
- Add backup rules that only preserve the preferences file
Improved
- [Telephone] When there are many matching contacts, choose one using voice
- [Vosk] Update model URLs
Fixed
- [Search] Fix "Search for" interpreted as lyrics
- Fix miscalculating matching character count in fuzzy string comparison
Development
- Update Gradle and Android Gradle Plugin
- Enable Java warnings when compiling
0.8 - Speech To Text service
Discussion about a new logo is happening over at #74, you may want to take a look ;-)
New
- Add Speech To Text service: press the microphone button in various applications to trigger Dicio's on-device Speech To Text (powered by Vosk), or just use it for dictation #100 #109 #111 (thank you @nebkrid!)
- [Current time] Add current time skill #91 #94 (thank you @drew-sinha!)
- [Telephone] Add French and Russian translations #88 #71 (thank you @ioctl-user, @MXC48, @BrightDV!)
- [Timer] Add French and Russian translations, but they do not show up because
dicio-numbers
does not support them yet
Fixed
- [Vosk] Fix crashes when starting the model download on older Android devices due to missing external storage permission #110
Development
- Improve the README section explaining how to create a skill #90 (thank you @drew-sinha!)
- Use the same theme in the whole app and deduplicate some code
0.7 - multiple interpretations, error activity
Matrix/IRC channel announcement
The Dicio project now has a channel on Libera Chat, #dicio!
- The IRC address is
ircs://irc.libera.chat:6697/dicio
, click here for webchat - You can also use a Matrix account to join the Dicio channel at #dicio:libera.chat. Some convenient clients, available both for phone and desktop, are listed at that link.
Improved
- [Vosk] Now multiple possible interpretations are provided for what the user said, and the app uses the first one it can understand #28 (thank you @MidnightNerd!)
- [Telephone] Translate the skill into Spanish #76 (thank you @AlanSanchezP!)
- Add an error reporting activity, similar to NewPipe's, so that (skill) errors can be reported
Fixed
- Fix input editing view remaining focused after input is sent
- [Timer] Fix Timer not hidden for languages without a number parser/formatter
Development
- Skills now have a
SkillContext
they can access at any time, and it contains these objects: AndroidContext
, shared preferences,NumberParserFormatter
for the current locale, currentLocale
,GraphicalOutputDevice
onto which to display outputs,SpeechOutputDevice
with which to speak #60 - The Krita project for Dicio's logo has been uploaded in the
meta/
folder. Also check out the issue about creating a new logo: #74 - Add Checkstyle to enforce code style
- Add view binding to the project
0.6 - add telephone and timer skills
New
- [Telephone] Add telephone skill: search and call contacts #29 (thank you @MidnightNerd!)
- [Timer] Add timer skill: set, query and cancel timers (still not polished) #53
- View and grant the permissions a skill requires in skill settings #52
- Add a notice in skill settings when the user is using a language for which
dicio-numbers
is unavailable #58
Improved
- [Vosk] Update French and Spanish models #50 #56 (thank you @nshmyrev!)
- Improve small UI details in skill settings
Fixed
- Fix skills that continue the conversation: now the user is requested to answer only after the device has finished talking
- Fix crash when initializing Android TTS on some devices
Development
- Allow skills to require Android permissions #52 Stypox/dicio-skill#5
dicio-numbers
now also supports durations (though is still only available in English and Italian, help is wanted for translations)- Add
util_yes_no
sentences file to be used across skills - Introduce desugaring to allow using new Java features on old devices
0.5 - add French, Greek and Spanish languages
New
- Add French language #36 (thank you @BrightDV!)
- Add Greek language #35 (thank you @pklampros!)
- Add Spanish language #43 #17 #14 (thank you @Cristian19194848!)
Improved
- Add "English (India)" (en-in) to language selector for more accurate speech recognition in for Indian English speakers
- [Open] Improve the string distance method used to find the app that best matches what the user said #41
- [Calculator] Improve English operators
- [Weather] Improve Italian sentences
Fixed
- [Vosk] Fix checking whether the model is already downloaded
- [Vosk] Keep showing the download icon when no model is available for the current user locale
Development
- Now dicio-sentences-compiler accepts word variations, such as
<e|g?>mail
, which matches "mail", "email" and "gmail". This reduces the amount of words that need to be written in.dslf
files for some languages. Stypox/dicio-sentences-compiler#7 Stypox/dicio-skill#4 - Fix app icon not being shown on F-Droid
0.4 - add German and Russian languages
New
- Add German language #19 (thank you @MidnightNerd!)
- Add Russian language #26 (thank you @Shura0!)
Improved
- Show skills that can't be enabled, too, in the skill settings
- [Weather] Improve English sentences
- [Search] Ask the user again if there were no results
Fixed
- Fix initial screen title alignment
- [Search] Fix clicking on results
- [Search] Fix DuckDuckGo locale