Android 開源專案「真」實戰啟航:瀏覽器 App EinkBro 開發者帶你逐步從 UI 設計、UX 提升到多功能實現秘技全解析(iThome鐵人賽系列書)【軟精裝】
-
9折 648元
720元
-
預計最高可得金幣30點 ? 可100%折抵
活動加倍另計 -
HAPPY GO享100累1點 4點抵1元折抵無上限
-
分類:中文書>電腦資訊>APP開發/程式設計>手機/平板APP開發追蹤? 追蹤分類後,您會在第一時間收到分類新品通知。
- 作者: 高茂原 (Daniel Kao) 追蹤 ? 追蹤作者後,您會在第一時間收到作者新書通知。
- 出版社: 博碩文化 追蹤 ? 追蹤出版社後,您會在第一時間收到出版社新書通知。
- 出版日:2023/09/28
活動訊息
內容簡介
完整解說EinkBro兩年多來的開發過程
使你的Android開發功力再上一層樓
本書內容改編自第 14 屆 iThome 鐵人賽 Mobile Development 組佳作系列文章《從開發瀏覽器 APP 學習 Android 實戰技巧,並搭上 Jetpack Compose 的列車》與第 13 屆 iThome 鐵人賽Mobile Development 組佳作系列文章《如何開發適合電子書閱讀器使用的瀏覽器 Android APP》。
一本書包含了兩屆 iThome 鐵人賽得獎作品的精華,前後連貫,讓讀者能更深入地了解 EinkBro App 的演進過程。雖然 EinkBro 是作者業餘開發的作品,但是從 2023 年起,它開始被內建於台灣主流的電子書品牌的閱讀器中,這無疑是一種莫大的肯定。
不同於以往的 Android 教學書籍,本書以實際 App 專案的開發先後順序介紹各種不同主題和功能的實作,讓讀者能夠隨著專案的演進,感受到它一步步改善的過程,並從中學習到各種開發的技巧。
書中大部分內容的主題是圍繞在電子書閱讀器帶來的限制和特性上,在講解功能開發的緣由和發想時,還會解釋其背後的思考邏輯;讓讀者不但能夠學習到實作的細節,還可以讓促使未來在開發功能時的思惟能更加全面。
【目標讀者】
→已經熟悉基本的 Android 開發方式,想要再進一步學習更多的實作技巧。
→想要更了解 WebView 開發細節的開發者。
→好奇開源專案是怎麼樣不斷演進和發布的讀者。
→同樣是電子書閱讀器的愛好者,想了解 EinkBro 開發背後的秘辛的使用者。
目錄
Chapter 0 WebView 開發入門
0.1 架構
Chapter 1 總論
1.1 EinkBro App 簡介
1.2 EinkBro 功能演進
1.3 各章節簡介及閱讀方式
Chapter 2 選擇起跑點與訂定開發原則
2.1 如何選擇好的起跑點
2.2 訂定自己的開發原則
Chapter 3 使用者介面初步改善
3.1 提高圖案對比度
3.2 調整對話框
Chapter 4 改造瀏覽網頁的方式——靜態翻頁
4.1 以翻頁的方式瀏覽網頁
4.2 利用音量鍵翻頁
4.3 點擊畫面翻頁
Chapter 5 調整網頁字型
5.1 字型大小
5.2 字體粗細
5.3 更換雲端字型
Chapter 6 支援閱讀模式
6.1 何謂閱讀模式
6.2 初次嘗試
6.3 改試另一種效果比較好的實作
Chapter 7 直排閱讀
7.1 牛刀小試
7.2 閱讀模式 + 直排
Chapter 8 儲存網頁為 epub 檔案
8.1 引入函式庫
8.2 取得網頁內容
8.3 電子書名及章節名稱
8.4 如何實作儲存圖片
Chapter 9 翻譯功能
9.1 核心實作
9.2 取得網頁全文
9.3 整合 Google Translate 網頁
9.4 網頁內容分頁
9.5 雙視窗可拖拉調整大小元件
9.6 翻譯結果與主畫面同步捲動
Chapter 10 深色主題模式
10.1 顏色設定調整
10.2 夜間模式設定
10.3 WebView 的夜間模式支援
Chapter 11 支援多 Activity
Chapter 12 上架 App 到 F-Droid 平台
12.1 什麼是 F-Droid
12.2 發佈 EinkBro 到 F-Droid 的理由
12.3 如何進行
Chapter 13 導入 Koin
13.1 什麼是 Koin
13.2 為什麼要導入 Koin
13.3 導入方法
Chapter 14 同時顯示雙網頁
14.1 需求來源
14.2 開發方式
Chapter 15 自訂字型
15.1 從系統中選擇字型檔案
15.2 注入 CSS Font 資訊到 WebView 中
15.3 攔截 WebRequest 以傳回字型資訊
Chapter 16 支援 epub 檔案的閱讀
16.1 分析網路上實作閱讀 epub 檔案的範例
16.2 重構參考來的程式碼
Chapter 17 整合 Github Actions
17.1 利用 Github Actions 編譯 release 版本
17.2 更方便的下載 Github Action 編譯好的 binary
Chapter 18 導入 Jetpack Compose
18.1 導入 Jetpack Compose 的一些想法
18.2 Compose 快速切換設定的對話框
18.3 Compose 功能選單
18.4 Compose 設定畫面的第一層
18.5 Compose 自製的AutoCompleteTextView
18.6 改寫工具列前
18.7 改寫工具列
18.8 改寫工具列後
18.9 改寫 PreferenceUI
Chapter 19 遠端編譯程式碼
19.1 何謂 mainframer
19.2 mainframer 的概念
19.3 舊的 Intel Mac 設定
19.4 遠端機器(M1 Mac mini) 的設定
19.5 執行方式
Chapter 20 多指觸控手勢功能
20.1 多點觸控手勢偵測
20.2 縮放畫面時防止誤觸
Chapter 21 淘汰onActivityResult
21.1 註冊 ActivityResult
21.2 呼叫步驟 1 中已經建立好的 ActivityResultLauncher
Chapter 22 防止追蹤碼
22.1 找到所需資料
22.2 呼叫時機
22.3 Firefox 的實作
22.4 Brave 的實作
Chapter 23 SharedPreferences 的再包裝
23.1 善用 Delegate
23.2 改善 Toggle 的功能
Chapter 24 改善文字選取的功能選單
24.1 自製功能清單
24.2 改善選取不準確的情況
Chapter 25 整合 ChatGPT
25.1 使用外部函式庫進行初步整合
25.2 支援 stream 的回覆型式
配送方式
-
台灣
- 國內宅配:本島、離島
-
到店取貨:
不限金額免運費
-
海外
- 國際快遞:全球
-
港澳店取:
詳細資料
詳細資料
-
- 語言
- 中文繁體
- 裝訂
- 紙本平裝
-
- ISBN
- 9786263335998
- 分級
- 普通級
-
- 頁數
- 320
- 商品規格
- 23.8*18*2.2
-
- 出版地
- 台灣
- 適讀年齡
- 全齡適讀
-
- 注音
- 級別
訂購/退換貨須知
退換貨須知:
**提醒您,鑑賞期不等於試用期,退回商品須為全新狀態**
-
依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
- 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
- 依消費者要求所為之客製化給付。(客製化商品)
- 報紙、期刊或雜誌。(含MOOK、外文雜誌)
- 經消費者拆封之影音商品或電腦軟體。
- 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
- 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
- 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
- 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
- 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
商品評價