tag:github.com,2008:https://github.com/Stypox/dicio-android/releasesRelease notes from dicio-android2025-10-09T00:10:36Ztag:github.com,2008:Repository/200275124/v4.02025-10-09T10:32:44Zv4.0 - translation and joke skills<p>New:</p>
<ul>
<li>Add translation skill via Lingva (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a>!)</li>
<li>Add jokes skill (but API only supports cs,de,en,es,fr,pt) <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3058311603" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/318" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/318/hovercard" href="https://github.com/Stypox/dicio-android/pull/318">#318</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a> again!)</li>
<li>Add Dutch language <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3243331284" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/330" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/330/hovercard" href="https://github.com/Stypox/dicio-android/pull/330">#330</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/RemieJanssen/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/RemieJanssen">@RemieJanssen</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/bollepel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/bollepel">@bollepel</a>!)</li>
</ul>
<p>Improved:</p>
<ul>
<li>Better accessibility when the UI is navigated through TalkBack or with dpad buttons <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3203696636" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/327" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/327/hovercard" href="https://github.com/Stypox/dicio-android/pull/327">#327</a></li>
<li>Better classification of network errors</li>
<li>[Android 15+] Support 16kB memory pages to abide by <a href="https://developer.android.com/guide/practices/page-sizes" rel="nofollow">Play Store rules</a></li>
<li>More German translations <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3324986470" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/337" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/337/hovercard" href="https://github.com/Stypox/dicio-android/pull/337">#337</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3328715482" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/339" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/339/hovercard" href="https://github.com/Stypox/dicio-android/pull/339">#339</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3328731319" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/340" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/340/hovercard" href="https://github.com/Stypox/dicio-android/pull/340">#340</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tiptoptom/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tiptoptom">@tiptoptom</a>!)</li>
<li>Efforts were made to make the app build reproducibly <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2996299042" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/308" data-hovercard-type="issue" data-hovercard-url="/Stypox/dicio-android/issues/308/hovercard" href="https://github.com/Stypox/dicio-android/issues/308">#308</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/licaon-kter/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/licaon-kter">@licaon-kter</a>!)</li>
<li>[Media] Don't treat single "start/stop" words as commands to avoid misinterpretations, but require the user to say "start/stop song" instead <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3328711461" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/338" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/338/hovercard" href="https://github.com/Stypox/dicio-android/pull/338">#338</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tiptoptom/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tiptoptom">@tiptoptom</a>!)</li>
</ul>
<p>Fixed:</p>
<ul>
<li>[Search] Fix opening results in browser by updating <code>ShareUtils</code> from NewPipe's codebase <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3438591021" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/347" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/347/hovercard" href="https://github.com/Stypox/dicio-android/pull/347">#347</a></li>
<li>[Search] Fix determining which language to search in was silently failing</li>
<li>[Search] Fix invalid URLs being extracted from DuckDuckGo sometimes</li>
<li>[Search] Improve error messages</li>
<li>[Listening] Fix NullPointerException when wakeword not running</li>
<li>Refactor some language utils <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3483058745" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/348" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/348/hovercard" href="https://github.com/Stypox/dicio-android/pull/348">#348</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a>!)</li>
<li>Update all libraries</li>
</ul>Stypoxtag:github.com,2008:Repository/200275124/v3.22025-10-08T23:29:11Zv3.2 - Swedish, wakeword control<h3>New</h3>
<ul>
<li>Add Swedish language <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3080899929" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/321" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/321/hovercard" href="https://github.com/Stypox/dicio-android/pull/321">#321</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/citgot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/citgot">@citgot</a>!)
<ul>
<li>Note that the Vosk model for Swedish is quite big (~300MB) and might run slowly on older phones</li>
</ul>
</li>
<li>[Listening] Add skill to enable/disable listening for wake word <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2855699033" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/286" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/286/hovercard" href="https://github.com/Stypox/dicio-android/pull/286">#286</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/celskeggs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/celskeggs">@celskeggs</a>!)</li>
</ul>
<h3>Improved</h3>
<ul>
<li>Add Spanish translations of more skills and improve current ones <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3011463769" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/315" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/315/hovercard" href="https://github.com/Stypox/dicio-android/pull/315">#315</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sguinetti/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sguinetti">@sguinetti</a>!)</li>
<li>Add German translation of Media skill <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2996932069" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/309" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/309/hovercard" href="https://github.com/Stypox/dicio-android/pull/309">#309</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tiptoptom/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tiptoptom">@tiptoptom</a>!)</li>
<li>Improve English sentences for Media and Lyrics skills <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3001120181" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/310" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/310/hovercard" href="https://github.com/Stypox/dicio-android/pull/310">#310</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3155032412" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/326" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/326/hovercard" href="https://github.com/Stypox/dicio-android/pull/326">#326</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a>!)</li>
<li>[Vosk] Update list of models from <a href="https://alphacephei.com/vosk/models" rel="nofollow">https://alphacephei.com/vosk/models</a></li>
</ul>
<h3>Development</h3>
<ul>
<li>Change naming for debug builds <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3115908254" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/324" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/324/hovercard" href="https://github.com/Stypox/dicio-android/pull/324">#324</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a>!)</li>
<li>Handle correctly the case where the repository URL of one of the dependencies included via git changes</li>
</ul>github-actions[bot]tag:github.com,2008:Repository/200275124/v3.12025-04-05T13:32:26Zv3.1 - External STT & more<p>This release is just a patch on top of v3.0 to fix the Media skill. Go read <a href="https://github.com/Stypox/dicio-android/releases/tag/v3.0">the changelog for v3.0</a> to find out more about the latest major release!</p>
<h3>Fixed</h3>
<ul>
<li>[Media] Use the <code>AudioManager</code> APIs to control playing media, instead of <code>MediaSessionManager</code> which is restricted for system apps, fixing "Missing permission to control media" errors</li>
<li>Interpret "12am" as midnight instead of noon <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2959678893" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-numbers/issues/11" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-numbers/pull/11/hovercard" href="https://github.com/Stypox/dicio-numbers/pull/11">Stypox/dicio-numbers#11</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ellyellyelly/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ellyellyelly">@ellyellyelly</a>!)</li>
</ul>github-actions[bot]tag:github.com,2008:Repository/200275124/v3.02025-04-03T22:19:59Zv3.0 - External STT & more<p><em>Many people contributed to this release, thanks to everyone!</em></p>
<h3>New</h3>
<ul>
<li>Add Polish language <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2740874979" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/260" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/260/hovercard" href="https://github.com/Stypox/dicio-android/pull/260">#260</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/r0d0dendr0n/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/r0d0dendr0n">@r0d0dendr0n</a>!)</li>
<li>[Media] Add media control skill, currently available in English, French and Italian <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2863265073" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/287" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/287/hovercard" href="https://github.com/Stypox/dicio-android/pull/287">#287</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/papjul/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/papjul">@papjul</a>!)</li>
<li>Allow using external Speech-To-Text apps as input devices <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2883039530" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/294" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/294/hovercard" href="https://github.com/Stypox/dicio-android/pull/294">#294</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/woheller69/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/woheller69">@woheller69</a>!)
<ul>
<li>Select this in the settings as a replacement for Vosk, which often does not provide good enough Speech-To-Text</li>
<li>Any app that opens a popup when receiving the <code>ACTION_RECOGNIZE_SPEECH</code> intent should work</li>
<li>Examples of apps that are known to work: woheller69's <a href="https://f-droid.org/en/packages/org.woheller69.whisper/" rel="nofollow">whisperIME</a>, <a href="https://f-droid.org/packages/ee.ioc.phon.android.speak/" rel="nofollow">Kõnele</a>, <a href="https://voiceinput.futo.org/" rel="nofollow">Futo Voice Input</a> but even "Speech Recognition and Synthesis from Google"</li>
</ul>
</li>
<li>Allow importing a custom wake word model for OpenWakeWord <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2869524092" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/291" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/291/hovercard" href="https://github.com/Stypox/dicio-android/pull/291">#291</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/celskeggs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/celskeggs">@celskeggs</a>!)
<ul>
<li>If you can't pronounce "Hey Dicio" well enough, you might want to try out a custom wake word model</li>
<li>You can download <code>.tflite</code> models of common wakeup words from <a href="https://github.com/dscripka/openWakeWord/releases/tag/v0.5.1">here</a></li>
<li>You can even train your own wake word model and then import it in Dicio, see the instructions <a href="https://github.com/Stypox/dicio-android/issues/238" data-hovercard-type="issue" data-hovercard-url="/Stypox/dicio-android/issues/238/hovercard">here</a></li>
</ul>
</li>
<li>Play stop sound when no speech is detected <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2869481560" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/290" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/290/hovercard" href="https://github.com/Stypox/dicio-android/pull/290">#290</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/celskeggs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/celskeggs">@celskeggs</a>!)</li>
</ul>
<h3>Improved</h3>
<ul>
<li>[Weather] Shorten speech responses and support imperial units <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2828799002" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/283" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/283/hovercard" href="https://github.com/Stypox/dicio-android/pull/283">#283</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a>!)</li>
<li>If the user input could not be understood, ask to repeat and reopen microphone <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2884554006" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/296" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/296/hovercard" href="https://github.com/Stypox/dicio-android/pull/296">#296</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/celskeggs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/celskeggs">@celskeggs</a>!)</li>
<li>Give lower priority to capturing groups when doing to sentence matching</li>
<li>[Calculator] Improve English sentences <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2754241600" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/264" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/264/hovercard" href="https://github.com/Stypox/dicio-android/pull/264">#264</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a>!)</li>
<li>[Current time] Improve German current time sentences</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fix inconsistent language after resuming app</li>
<li>Fix notification text not being expandable</li>
<li>[Search] Fix DuckDuckGo scraper</li>
</ul>
<h3>Development</h3>
<ul>
<li>Target SDK 36 and update dependencies <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2863887204" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/288" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/288/hovercard" href="https://github.com/Stypox/dicio-android/pull/288">#288</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/papjul/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/papjul">@papjul</a>!)</li>
<li>Fix typo in README (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Inhishonor/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Inhishonor">@Inhishonor</a>!)</li>
</ul>github-actions[bot]tag:github.com,2008:Repository/200275124/v2.02024-09-27T23:08:05Zv2.0 - Wake word<h3>New</h3>
<ul>
<li>Add wake word recognition in the background <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2553713551" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/236" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/236/hovercard" href="https://github.com/Stypox/dicio-android/pull/236">#236</a>
<ul>
<li>You can now start Dicio by saying "Hey Dicio" even while the phone is turned off</li>
<li>The used AI model is <a href="https://github.com/dscripka/openWakeWord">OpenWakeWord</a>, a huge thank you to them for the excellent work!</li>
</ul>
</li>
<li>Play configurable sound when Dicio starts listening <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2553713551" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/236" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/236/hovercard" href="https://github.com/Stypox/dicio-android/pull/236">#236</a></li>
</ul>
<h3>Improved</h3>
<ul>
<li>Better reporting of download and unzip progress</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fix Dicio's STT popup not returning any result causing Firefox to crash</li>
</ul>Stypoxtag:github.com,2008:Repository/200275124/v1.12024-08-20T21:34:59Zv1.1 - Voice Input<h3>New</h3>
<ul>
<li>Dicio can now be used as Voice Input in Android settings <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2432238212" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/227" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/227/hovercard" href="https://github.com/Stypox/dicio-android/pull/227">#227</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nebkrid/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nebkrid">@nebkrid</a>!)</li>
<li>The voice command button on (Bluetooth) headsets will now trigger Dicio <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2432302573" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/228" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/228/hovercard" href="https://github.com/Stypox/dicio-android/pull/228">#228</a></li>
</ul>
<h3>Improved</h3>
<ul>
<li>Rename STT service to STT popup</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fix reference words not being normalized</li>
<li>[Vosk] Fix pressing STT microphone while still loading</li>
</ul>
<h3>Localization</h3>
<ul>
<li>New language available: Ukrainian 🇺🇦 <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2420878320" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/222" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/222/hovercard" href="https://github.com/Stypox/dicio-android/pull/222">#222</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/balaraz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/balaraz">@balaraz</a>!)</li>
<li>Translate navigation skill in Russian <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1850313373" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/188" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/188/hovercard" href="https://github.com/Stypox/dicio-android/pull/188">#188</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Shura0/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Shura0">@Shura0</a>!)</li>
<li>Improve French and German translations <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2429400539" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/225" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/225/hovercard" href="https://github.com/Stypox/dicio-android/pull/225">#225</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2139575379" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/210" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/210/hovercard" href="https://github.com/Stypox/dicio-android/pull/210">#210</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/AgentSteel/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/AgentSteel">@AgentSteel</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/tiptoptom/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/tiptoptom">@tiptoptom</a>!)</li>
<li>Improve README documentation</li>
</ul>
<h3>Development</h3>
<ul>
<li>Fix tests not compiling <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2465486662" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/230" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/230/hovercard" href="https://github.com/Stypox/dicio-android/pull/230">#230</a> (thanks <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Martin-Laclaustra/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Martin-Laclaustra">@Martin-Laclaustra</a>!)</li>
<li>Add GitHub actions to build app, generate screenshots, publish GitHub release and publish to Play Store</li>
</ul>github-actions[bot]tag:github.com,2008:Repository/200275124/v1.02024-07-11T15:34:05Zv1.0 - Huge refactor<h3>New</h3>
<ul>
<li>Adopt Material 3 design with black and dynamic themes</li>
<li>Migrate code to Jetpack Compose and other modern libs</li>
<li>Faster and more accurate sentence recognition algorithm</li>
<li>Simpler and more powerful Skill APIs</li>
<li>Add launcher shortcut to open Speech To Text service</li>
</ul>
<h3>Improved</h3>
<ul>
<li>[Vosk] Report more status information in STT button:</li>
</ul>
<a target="_blank" rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/36421898/347879960-4d5a39da-e4cc-4e3f-b65f-847ab0085d95.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzQxMjI2NDksIm5iZiI6MTc3NDEyMjM0OSwicGF0aCI6Ii8zNjQyMTg5OC8zNDc4Nzk5NjAtNGQ1YTM5ZGEtZTRjYy00ZTNmLWI2NWYtODQ3YWIwMDg1ZDk1LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAzMjElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMzIxVDE5NDU0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJjNmM3NDZiYTdiYTVjODYzYzRhMGI0YTk5NjU0ZTY1YWYyY2RlNzY1YmZiYWY3MTNhNWQ1NjYzZGZjN2Q5ZmQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.Ry9DV5XZq8iBrJ25qbjAj8-mB5QTbgwE1GOWodGZjfo"><img src="https://private-user-images.githubusercontent.com/36421898/347879960-4d5a39da-e4cc-4e3f-b65f-847ab0085d95.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzQxMjI2NDksIm5iZiI6MTc3NDEyMjM0OSwicGF0aCI6Ii8zNjQyMTg5OC8zNDc4Nzk5NjAtNGQ1YTM5ZGEtZTRjYy00ZTNmLWI2NWYtODQ3YWIwMDg1ZDk1LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAzMjElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMzIxVDE5NDU0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJjNmM3NDZiYTdiYTVjODYzYzRhMGI0YTk5NjU0ZTY1YWYyY2RlNzY1YmZiYWY3MTNhNWQ1NjYzZGZjN2Q5ZmQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.Ry9DV5XZq8iBrJ25qbjAj8-mB5QTbgwE1GOWodGZjfo" width="600px" content-type-secured-asset="image/png" style="max-width: 100%;"></a>
<ul>
<li>Target Android 14 (API 34)</li>
<li>Group interactions better and add loading box in home screen</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>[Vosk] Fix Vosk model not downloading on some phones, by ditching Android's <code>DownloadManager</code> and using a network request directly</li>
<li>Fix various UI crashes thanks to the null safety of Kotlin and to the better Skill APIs design</li>
</ul>
<h3>Development</h3>
<ul>
<li>Adopt Jetpack Compose for declarative UI</li>
<li>Use the Model-View-ViewModel architectural pattern to separate business logic from UI code</li>
<li>Adopt Hilt for Dependency Injection</li>
<li>Migrate from SharedPreferences to protobuf-backed DataStore</li>
<li>Move dicio-skill from <a href="https://github.com/Stypox/dicio-skill/">separate repository</a> to Gradle module <code>:skill</code> in this repo</li>
<li>Create <code>:sentences-compiler-plugin</code> to generate type-safe Kotlin skill standard recognizer definitions based on <code>skill_definitions.yml</code> and on translated sentences in <code>LANG/SKILL_ID.yml</code> files</li>
<li>Migrate from Gradle DSL (<code>.gradle</code>) to Kotlin DSL (<code>.gradle.kts</code>)</li>
<li>Adopt Version Catalog to store the versions of dependencies</li>
<li>Ditch Jitpack for building other <code>dicio-*</code> libraries, and use <code>me.champeau.includegit</code> instead</li>
</ul>Stypoxtag:github.com,2008:Repository/200275124/v0.102023-09-09T13:32:17Zv0.10 - Use Kotlin, timer improvements<h3>New</h3>
<ul>
<li>The project was converted from Java to Kotlin, if you notice issues please report them! <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1564761870" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/157" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/157/hovercard" href="https://github.com/Stypox/dicio-android/pull/157">#157</a> (thanks to <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Doomsdayrs/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Doomsdayrs">@Doomsdayrs</a> for the input)</li>
<li>[Timer] The ringtone now plays in a loop for 30s, or until the user interrupts it</li>
</ul>
<h3>Improved</h3>
<ul>
<li>Capture errors when generating output</li>
<li>Target Android 13 Tiramisu (API 33)</li>
</ul>
<h3>Localization</h3>
<ul>
<li>Add Czech language <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1530580996" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/149" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/149/hovercard" href="https://github.com/Stypox/dicio-android/pull/149">#149</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/kri164/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/kri164">@kri164</a>!)</li>
<li>Add Slovenian language <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1655527954" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/170" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/170/hovercard" href="https://github.com/Stypox/dicio-android/pull/170">#170</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1666900949" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/171" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/171/hovercard" href="https://github.com/Stypox/dicio-android/pull/171">#171</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/pro1mantis/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/pro1mantis">@pro1mantis</a>!)</li>
<li>Translate navigation, current time and timer to German <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1564381362" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/156" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/156/hovercard" href="https://github.com/Stypox/dicio-android/pull/156">#156</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1564859815" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/158" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/158/hovercard" href="https://github.com/Stypox/dicio-android/pull/158">#158</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1564888181" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/159" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/159/hovercard" href="https://github.com/Stypox/dicio-android/pull/159">#159</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1564900438" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/160" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/160/hovercard" href="https://github.com/Stypox/dicio-android/pull/160">#160</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sl1txdvd/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sl1txdvd">@sl1txdvd</a>!)</li>
</ul>Stypoxtag:github.com,2008:Repository/200275124/v0.92023-01-29T14:52:48Z0.9 - New logo, navigation skill<h3>New</h3>
<ul>
<li><strong>New logo</strong>! Thanks to everyone involved in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1207355650" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/74" data-hovercard-type="issue" data-hovercard-url="/Stypox/dicio-android/issues/74/hovercard" href="https://github.com/Stypox/dicio-android/issues/74">#74</a></li>
<li>[Navigation] Add basic <strong>navigation skill</strong> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1508917952" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/113" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/113/hovercard" href="https://github.com/Stypox/dicio-android/pull/113">#113</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/primesun/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/primesun">@primesun</a>!)</li>
<li>[Current time] Add French translation <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1513745500" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/123" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/123/hovercard" href="https://github.com/Stypox/dicio-android/pull/123">#123</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MXC48-zz/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MXC48-zz">@MXC48-zz</a> and <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Phyks/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Phyks">@Phyks</a>!)</li>
<li>Add backup rules that only preserve the preferences file</li>
</ul>
<h3>Improved</h3>
<ul>
<li>[Telephone] When there are many matching contacts, choose one using voice</li>
<li>[Vosk] Update model URLs</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>[Search] Fix "Search for" interpreted as lyrics</li>
<li>Fix miscalculating matching character count in fuzzy string comparison</li>
</ul>
<h3>Development</h3>
<ul>
<li>Update Gradle and Android Gradle Plugin</li>
<li>Enable Java warnings when compiling</li>
</ul>Stypoxtag:github.com,2008:Repository/200275124/v0.82022-12-20T18:14:17Z0.8 - Speech To Text service<p>Discussion about a <strong>new logo</strong> is happening over at <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1207355650" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/74" data-hovercard-type="issue" data-hovercard-url="/Stypox/dicio-android/issues/74/hovercard" href="https://github.com/Stypox/dicio-android/issues/74">#74</a>, you may want to take a look ;-)</p>
<h3>New</h3>
<ul>
<li>Add <strong>Speech To Text service</strong>: 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 <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1457071646" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/100" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/100/hovercard" href="https://github.com/Stypox/dicio-android/pull/100">#100</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1494026490" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/109" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/109/hovercard" href="https://github.com/Stypox/dicio-android/pull/109">#109</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1495244873" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/111" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/111/hovercard" href="https://github.com/Stypox/dicio-android/pull/111">#111</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nebkrid/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nebkrid">@nebkrid</a>!)</li>
<li>[Current time] Add <strong>current time</strong> skill <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1306992251" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/91" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/91/hovercard" href="https://github.com/Stypox/dicio-android/pull/91">#91</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1354249378" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/94" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/94/hovercard" href="https://github.com/Stypox/dicio-android/pull/94">#94</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/drew-sinha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/drew-sinha">@drew-sinha</a>!)</li>
<li>[Telephone] Add French and Russian translations <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1299581069" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/88" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/88/hovercard" href="https://github.com/Stypox/dicio-android/pull/88">#88</a> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1207085391" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/71" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/71/hovercard" href="https://github.com/Stypox/dicio-android/pull/71">#71</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/ioctl-user/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/ioctl-user">@ioctl-user</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/MXC48/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/MXC48">@MXC48</a>, <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/BrightDV/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/BrightDV">@BrightDV</a>!)</li>
<li>[Timer] Add French and Russian translations, but they do not show up because <a href="https://github.com/Stypox/dicio-numbers"><code>dicio-numbers</code></a> does not support them yet</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>[Vosk] Fix crashes when starting the model download on older Android devices due to missing external storage permission <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1494256419" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/110" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/110/hovercard" href="https://github.com/Stypox/dicio-android/pull/110">#110</a></li>
</ul>
<h3>Development</h3>
<ul>
<li>Improve the README section explaining how to create a skill <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1306990548" data-permission-text="Title is private" data-url="https://github.com/Stypox/dicio-android/issues/90" data-hovercard-type="pull_request" data-hovercard-url="/Stypox/dicio-android/pull/90/hovercard" href="https://github.com/Stypox/dicio-android/pull/90">#90</a> (thank you <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/drew-sinha/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/drew-sinha">@drew-sinha</a>!)</li>
<li>Use the same theme in the whole app and deduplicate some code</li>
</ul>Stypox