整合 Edge TTS 文字轉語音

這篇文章會整理這一個月來整合 Edge TTS 功能到 EinkBro 中的過程。經過一連串的開發後,總算是把自己想要的功能都開發出來了。 為什麼要整合? 目前 Android 手機上的 Accessibility Service 常常在更新,它的文字轉語音效果也比前幾年有明顯的進步。但是,聽起來還是感覺得出來比較機器人一點。目前能通吃所有語言的 OpenAI tts 文字轉語音,雖然什麼語言的文字丟給它它都可以唸得出來,但是 ABC 的腔調還是聽起來不是很舒服。所以,開始著手找看看是不是有機會將其他的語音轉文字整合到 EinkBro 中。 ...

September 28, 2024

EinkBro 的更新小記: v11.16.0 & v11.17.0

果然,沒有良好的測試偶爾就是會出大包。還好,不用寫 outage report,只要趕快再推出新版,有人來問時,就說新版已經解決了。 v11.16.0 支援書籤重排! 重磅功能,不曉得為什麼我拖了那麼久沒開發,寧可用 prefix 加上數字的方式,撐了兩三年。我想,主要原因應該是:得要調整資料庫格式,將 Bookmark 加上 order 的欄位吧。有了這個欄位,才能夠將使用者移動後的新排序記錄起來。 ...

September 17, 2024

EinkBro 六月以來的一些更新

自從開始更大量地使用 ChatGPT 協助寫 code 之後,就漸漸失去了動力寫文章,因為大部分的功能只需要請 ChatGPT 幫忙產生所需程式碼,再稍微重構一下,將其套用到 EinkBro 中就行。如此一來,少了很多需要自己探索,或是值得記錄下來的內容。不過,一直這樣下去也不是辦法,所以,還是來寫寫最近有加入的新功能吧。 ...

August 29, 2024

EinkBro: 支援 Gemini API

Google 在 Google IO 2024 公布了 Gemini 1.5 Flash model,並且幾乎免費地讓開發者可以來試用。為了能夠試試它的效果,我把它也整合進了 EinkBro。本篇文章會說明整合的方式。 ...

June 15, 2024

EinkBro App 被 Google Play Store suspend

沒想到在 2024 年初竟然迎來了這樣子的結果,真的是始料未及。下面會來說說被 suspend 的原委,希望讓剛好看到這篇文章的讀者能夠有所警惕,不要踩到 Google 大大的雷。 在 2023 年 12 月,突然想到其實我可以在 EinkBro 中加入更方便的 App 更新機制。以我自己的使用習慣來說,我都會是安裝剛開發完的版本,所以都不是安裝 Google Play Store 上可能兩三週才更新一次的相對穩定版本。 ...

January 23, 2024

從 EinkBro App 中直接安裝升級版本

早該做的提升效率的事 — 從 EinkBro App 中直接安裝升級版本 手邊的 Android 手機,外加電子書閱讀器設備,總共有十幾台。常常在 EinkBro 更新後,不論在使用哪一台,都要開網頁到 Github 網站,下載 snapshot 版本,或是最新的 release 版,再安裝。 ...

December 19, 2023

Kotlin Coroutine Channel 的使用簡介

這篇文章會分享 EinkBro 在整合 OpenAI tts API 時,藉由 Kotlin Coroutine Channel 處理 API 邏輯和播放的實作。 前言 原先在 EinkBro 的朗讀功能,是利用系統的文字轉語音功能。這樣做的好處是,不用處理太多複雜的邏輯,只需要把文字丟給系統就好;但缺點是每一台設備上的文字轉語音功能支援度不同。很多時候還需要使用者事前先下載好相關資料檔,或是從系統設定中指定好想要的語音語言。對一般使用者來說,難度有點高。在使用時,也需要請使用者自己指定一下語言,不然可能會唸不出來。即便是我自己的設備,也不見得每一台都能夠正常運作。 ...

December 10, 2023

EinkBro 期待已久的功能 — 選取連結的文字!

期待了很久,一直不知道怎麼實作的功能終於做出來了!在 Android WebView中,一般來說,只可以長按非連結的文字,選取文字進行複製或其他的動作。如果想要選取連結上的文字的話,必須要用些小技巧才能達成。 ...

November 3, 2023

我的出書之路

這篇文章會說明我即將出版的書 “Android 開源專案「真」實戰啟航:瀏覽器 App EinkBro 開發者帶你逐步從 UI 設計、UX 提升到多功能實現秘技全解析” 的漫長出書過程。 ...

September 10, 2023

在 EinkBro 中支援 Youtube 影片的雙語字幕

這篇文章將講解怎麼在 EinkBro 中利用攔截 http request,將 Youtube 影片在呈現字幕時,能夠順便顯示第二種外語字幕。 這樣子的功能通常都是在 PC 瀏覽器上利用外掛的 extension 完成的。在手機或是平板上幾乎很少有瀏覽器可以支援這樣子的效果。之前我也一直很想要在平板上有類似這樣子的功能,原先是想要修改很好用的 Youtube Alternative App NewPipe,無奈它採用了 ExoPlayer 當播放器,而 ExoPlayer 對我來說又過於複雜,最終一直沒有試出來。 ...

June 30, 2023