iT邦幫忙

android相關文章
共有 1253 則文章
鐵人賽 Mobile Development DAY 13

技術 Data layer testing (4)

上一篇示範了 Ktor mock engine 的設定和測試了如果出現 exception 時能否順利地處理。現在就測試 getEta 輸出班次的情景。 Tes...

鐵人賽 Mobile Development DAY 23

技術 Re-architect with UseCase driven design

Re-architect 大家應該都很常說,或是很習慣使用到一個詞 - 重構(Refactoring)。但是大家在說“重構”的時候其實不太像是在做“重構”,比較...

鐵人賽 Mobile Development DAY 23

技術 Parser 的單元測試

這篇會講解怎麼直接用 jUnit 來測試 parser 和 Android 環境的 parser ,接續上一篇,我們現在已經準備好了 RSS feed 的測試案...

鐵人賽 Mobile Development DAY 13

技術 D13/ 怎麼做翻卡片的動畫 - Animation Part 2 & GraphicsLayer

今天大概會聊到的範圍 Animation Modifier.graphicsLayer 上一篇講到 Animation,今天想要拿 Animation...

鐵人賽 Mobile Development DAY 12

技術 110/12 - 把照片儲存在Pictures/應用程式名稱資料夾 - 2

Android 11開始把getExternalStoragePublicDirectory標記棄用,要求改用MediaStore,一樣從畫面開始 <?x...

鐵人賽 Mobile Development DAY 12

技術 Data layer testing (3)

上一篇我們寫好了 EtaResponseMapper 的 unit test。但 data layer 還有 EtaResponseMapper 未寫 unit...

鐵人賽 Mobile Development DAY 22

技術 Clean architecture in Android

要談架構的話當然一定會聊到這現在最夯最流行的 Clean architecture,雖然在前面的文章中已經提過幾次了,但是應該不是所有人都有真正的看過這本書,所...

鐵人賽 Mobile Development DAY 22

技術 規劃 Parser 的測試

規劃測試方式 測試是寫 library 很重要的一環,因為我們要確保自己的程式碼有一個基本的品質,測試是絕對不能馬虎的。測試 Parser 要分成兩個部分來看,...

鐵人賽 Mobile Development DAY 30

技術 電子書閱讀器上的瀏覽器 [Day30] 導入 Koin

原本今天最後一篇,只想做個總結,放放相關連結而已。不過剛好昨天心血來潮幫 EinkBro APP 導入了 Koin 的支援,今天就順手也記錄一下,讓大家當做參考...

鐵人賽 Mobile Development DAY 29

技術 電子書閱讀器上的瀏覽器 [Day29] 網頁載入性能改善

原以為一個不到 3MB (扣除擋廣告的資料檔)的 Andrid App,既沒有任何的 tracking 機制,也沒有從網路抓任何非網頁內容的資料回來,理論上網頁...

鐵人賽 Mobile Development DAY 12

技術 D12/ 我要怎麼用動畫改變中的資料? - Animations

今天大概會聊到的範圍 Animation 上一次有聊到,我們可以透過 Gesture 和 State 來與 user 互動。例如下面這個例子: @Co...

鐵人賽 AI & Data DAY 26
觀賞魚辨識的YOLO全餐 系列 第 26

技術 Day 26 - HBuilderX 與 Native.js API 讀取圖片

Day 26 - HBuilderX 與 Native.js API 讀取圖片 在 Day 25 - HBuilder X 產生 apk 已經完成使用 HBui...

鐵人賽 Mobile Development DAY 11

技術 110/11 - 把照片儲存在Pictures/應用程式名稱資料夾 - 1

不太可能每個專案都那麼爽,可以把相片儲存在內部儲存空間/Android/data/packageName/files/,所以還是要練習把檔案儲存在內部儲存空間/...

鐵人賽 Mobile Development DAY 11

技術 Data layer testing (2)

今天會繼續寫 EtaResponseMapperTest。我們示範的 test case 是正常輸出班次的情景。首先是準備 response: val resp...

鐵人賽 Mobile Development DAY 11

技術 D11/ 要怎麼顯示動態資料的畫面 - State

今天大概會聊到的範圍 State Gesture Modifier 在之前,都只是在介紹比較靜態的畫面。但今天如果想要和使用者互動時,該如何處理呢?...

鐵人賽 Mobile Development DAY 21

技術 Parser Generator (三)

上篇提到了 parser generator 在產生程式碼的時候,可以用四個步驟去拆解裡面的資訊並產生程式碼,我們現在來看一下範例吧! 進入範例之前,我們也複...

鐵人賽 Mobile Development DAY 20

技術 專案檔案結構

第二階段也接近到尾聲了,現在便利貼已經有了比較豐富的功能了,可以拖曳便利貼、改變顏色、改變文字、新增以及刪除。那麼檔案的結構又會是什麼樣子呢? 這邊的分類方式是...

鐵人賽 Mobile Development DAY 20

技術 Parser Generator (二)

上一篇我們講解怎麼產生目標 parser 的 parse 方法,這篇來講解 generator 的內部結構,這會用到上篇提到的 getParseFuncSpec...

鐵人賽 Mobile Development DAY 10

技術 110/10 - Intent.ACTION_MEDIA_SCANNER_SCAN_FILE棄用

新增相片後,要發送通知給相簿應用程式,這樣才能更新照片清單,這樣才能在相簿看到新增加的照片,使用者體驗才會好。 以前我們會用Intent.ACTION_MEDI...

鐵人賽 Mobile Development DAY 9

技術 110/09 - 把照片儲存在Android/data/packageName/files/

今天來實作使用ActivityResultContracts.TakePicture()開啟相機,拍照後把照片儲存在Android/data/packageNa...

鐵人賽 Mobile Development DAY 10

技術 D10/ 我要怎麼把文字變美美的 - Text & AnnotatedString

今天大概會聊到的範圍 AnnotatedString Text 在 Compose 中顯示文字時,我們可以使用 Text 這個 Composable。...

鐵人賽 Mobile Development DAY 19

技術 Jetpack Compose navigation + Koin

現在我們有了編輯便利貼頁面還有編輯文字頁面,該是時候好好的來思考要怎麼切換頁面了!流程如下:使用者選擇了某一個便利貼→看到選單出現→點擊編輯文字→跳轉到編輯文字...

鐵人賽 Mobile Development DAY 19

技術 Parser Generator (一)

KotlinParserGenerator 我們先從 kotlin 的 parser 講起,這邊會順便帶到一些 KotlinPoet 的進階用法。我們目標是讀取...

鐵人賽 Mobile Development DAY 9

技術 Date & time

上一篇在實作 EtaResponseMapper 的時候我們用了 Java 8 開始有的 Instant、LocalDateTime 和 ZonedDateTi...

鐵人賽 Mobile Development DAY 8

技術 110/08 - 檔案要存那裡?

以前在寫應用程式的時候因為不懂、方便、隨性等各種原因,所以就在根目錄建立資料夾,把照片影片都往裡面丟,然後應用程式解除安裝後檔案還是存活在手機中。 Google...

鐵人賽 Mobile Development DAY 28

技術 電子書閱讀器上的瀏覽器 [Day28] 上架到 F-Droid

為什麼要介紹上架到 F-Droid 而不是 Google Play Store 呢?關於上架到 Google Play Store 的教學已經多到不用我再多寫...

鐵人賽 Mobile Development DAY 27

技術 電子書閱讀器上的瀏覽器 [Day27] 無痕模式

原先的 browser 實作就已經包含了無痕模式的細部功能,像是禁止使用 Cookie,和不記錄瀏覽歷史;但是卻沒有一個快速開關能夠進到一般瀏覽器支援的無痕模式...

鐵人賽 Mobile Development DAY 26

技術 電子書閱讀器上的瀏覽器 [Day26] 保持畫面不會自動關閉

今天的內容很短,因為實作還蠻容易的。 瀏覽網頁時,有些時候是在看影片。這時,如果沒有特別設定要系統保持清醒的話,常常會看到一半就因為系統睡眠時間到了,就把畫面關...

鐵人賽 Mobile Development DAY 25

技術 電子書閱讀器上的瀏覽器 [Day25] 支援多 Activity

雖然 browser 已經可以支援多個分頁瀏覽了(全在同一個 Activity 中做切換),但有些時候還是需要有另一個裝載 WebView 的 Activity...

鐵人賽 Mobile Development DAY 9

技術 D09 / 為什麼我的按鈕這麼長? - Intrinsic measurements

今天大概會聊到的範圍 Intrinsic measurements 今天的標題可能會讓人有點疑惑,但這是我寫出這段 Code 時的第一反應。 Colu...