iT邦幫忙

鐵人檔案

2022 iThome 鐵人賽
回列表
Mobile Development

從開發瀏覽器 APP 學習 Android 實戰技巧,並搭上 Jetpack Compose 的列車 系列

去年第一次參加鐵人賽,以 "如何開發適合電子書閱讀器使用的瀏覽器 Android APP" 為主題,圍繞著瀏覽器的各種功能實作,講解其中的開發細節。很榮幸地,得到了評審的青睞,拿了佳作。

今年再接再礪,帶著一整年滿滿的實作經驗要來跟大家分享。如果你覺得市面上的各種 Hello world 教學已經無法再滿足你;想要聽聽實際開發會遇到的各種雷,和對於發現問題找尋答案的過程有興趣的話,千萬不要錯過這次的系列文章。希望大家在閱讀的過程中,也能激起自己動手開始實作的欲望。

鐵人鍊成 | 共 31 篇文章 | 9 人訂閱 訂閱系列文 RSS系列文
DAY 1

[Day1] 從開發瀏覽器 APP 學習實戰技巧 -- 總覽:承先啟後

從八月開始,又默默地注意到了2022鐵人賽開始報名。一直覺得不要再走這麼一回了,連續30天每天要燒腦一兩個小時;但到了報名的最後一天,還是忍不住填了資料,想把自...

2022-09-15 ‧ 由 Daniel Kao 分享
DAY 2

[Day2] 從開發瀏覽器 APP 學習實戰技巧 -- 將網頁畫面由黑轉白

鐵人賽的第二天,先來點篇幅短的開胃菜,暖暖身。 在使用 EinkBro 時,常會遇到網頁背景是黑色的,最常見的應該就是在開啟 ptt 的文章時。由於電子紙的特性...

2022-09-16 ‧ 由 Daniel Kao 分享
DAY 3

[Day3] 從開發瀏覽器 APP 學習實戰技巧 -- Android 必備組合技: Room + Flow + ViewModel

EinkBro App 中的實作大都是用很舊很舊的技術。雖然隨著功能不斷增加,我有逐漸把一些檔案翻新成 Kotlin,和盡量把相關的邏輯抽出到獨立的 class...

2022-09-17 ‧ 由 Daniel Kao 分享
DAY 4

[Day4] 從開發瀏覽器 APP 學習實戰技巧 -- 雙開:同時顯示兩個網頁

安裝 NAVER 開發的瀏覽器 Whale 時,發現它有一個很好用的功能:可以同時在電腦畫面上顯示兩個網頁的內容,而且可以設定在其中一個網頁點擊任何連結時,都用...

2022-09-18 ‧ 由 Daniel Kao 分享
DAY 5

[Day5] 從開發瀏覽器 APP 學習實戰技巧 -- 儲存 epub 文件的流程改善

去年寫了兩篇如何在瀏覽網頁時,把當前的網頁儲存成 epub 檔案的說明。 電子書閱讀器上的瀏覽器 [Day15] 網頁匯出成 epub 檔案 (I) 介紹 ep...

2022-09-19 ‧ 由 Daniel Kao 分享
DAY 6

[Day6] 從開發瀏覽器 APP 學習實戰技巧 -- 如何使用自訂字型瀏覽網頁

去年參加鐵人賽時,已經寫了一篇關於字型調整的文章:電子書閱讀器上的瀏覽器 [Day08] 調整網頁字型。當時介紹了怎麼調整字型粗細,大小,以及如何套用雲端字型。...

2022-09-20 ‧ 由 Daniel Kao 分享
DAY 7

[Day7] 從開發瀏覽器 APP 學習實戰技巧 -- 支援 epub 檔案的閱讀

前情提要 去年有兩篇文章在介紹怎麼支援將網頁輸出成 epub 檔案,分別說明了怎樣處理網頁的文字內容,和儲存圖片的方式。 電子書閱讀器上的瀏覽器 [Day1...

2022-09-21 ‧ 由 Daniel Kao 分享
DAY 8

[Day8] 從開發瀏覽器 APP 學習實戰技巧 -- 支援 epub 文件的註記功能

上一篇介紹完怎麼在 EinkBro 中開啟 epub 檔案後,今天要來說說選擇 epub 文字時,如何為它們換上不同的 style。文章的標題特地加上 半完成品...

2022-09-22 ‧ 由 Daniel Kao 分享
DAY 9

[Day9] 從開發瀏覽器 APP 學習實戰技巧 -- 簡易的跨設備資訊分享機制 Part I

Part I: 介紹 Sharik App 以及它的現有機制 EinkBro 身為瀏覽器,是個不斷從網路取得資訊的 App,但是卻完全沒有任何追蹤使用者的實作;...

2022-09-23 ‧ 由 Daniel Kao 分享
DAY 9

[Day10] 從開發瀏覽器 APP 學習實戰技巧 -- 簡易的跨設備資訊分享機制 Part II

Part II: 改造 Sharik App 現有機制,讓它的分享為有效率 我把原先的 polling 機制改成 UDP multicast 實作:在發送端開始...

2022-09-23 ‧ 由 Daniel Kao 分享