iT邦幫忙

android相關文章
共有 1139 則文章
鐵人賽 Mobile Development DAY 30

技術 架構總覽與閒聊

終於到了最後一天了,不知道把這三十天看完的人有多少呢?希望看到最後一天的人,有感受到我對於這系列文章中想傳達出去的理念,感受到架構設計的取捨是什麼,不是只有選擇...

鐵人賽 Mobile Development DAY 19

技術 110/19 - Android 10以上圖片剪裁

Android 10以上就很簡單,直接使用MediaStore抓到圖片路徑,然後送給圖片剪裁就好 if (Build.VERSION.SDK_INT >=...

鐵人賽 Mobile Development DAY 20

技術 D20/ 怎麼在 compose 與 non-compoe 間傳資料 - Compose Side-Effect part 2

今天大概會聊到的範圍 rememberUpdateState 上一篇聊到,SideEffect 周邊還有一堆和 state & effect 相...

鐵人賽 Mobile Development DAY 19

技術 Station list screen (1)

最近兩篇都是講 navigation component,入面為了示範設定 navigation 我們已經預先準備了兩頁的 Fragment class 和 l...

鐵人賽 Mobile Development DAY 29

技術 Re-architect - StickyNoteView

上一次我們完成了 ContextMenu 的部分,ContextMenu 也有了屬於自己的 ViewModel,架構圖如下: 今天我們將要完成 Re-arch...

鐵人賽 Mobile Development DAY 29

技術 發佈 Library

發佈 library 的方法真的滿多的,像是 bintray、jcenter 等等的,但中途可能要設定不少東西,打包、上傳、設定路徑之類,那有沒有更簡單的方法?...

鐵人賽 Mobile Development DAY 18

技術 110/18 - Android 7到Android 9圖片剪裁

圖片剪裁到了Android 7之後,改成使用FileProvider建立的uri,就是要把路徑給FileProvider.getUriForFile()轉換一下...

鐵人賽 Mobile Development DAY 19

技術 D19/ 要權限的時後有 Launcher has not been initialized,怎麼辦? - SideEffect

今天大概會聊到的範圍 SideEffect DisposableEffect 今天要講的東西是 Side-Effect,很多場景下都有更好的 sol...

鐵人賽 Mobile Development DAY 18

技術 Navigation (2)

在 Android,navigation graph 是 resource 的一種,我們先建立 eta.xml。 先附上完整的內容,然後再慢慢講解入面的意思。...

鐵人賽 Mobile Development DAY 28

技術 Re-architect - ContextMenuView

以下是到目前為止的架構圖,已經成功的將 ViewModel 層的全部商業邏輯移到了 Domain 層: 接下來,將在右邊的 ContextMenu 也開一條從...

鐵人賽 Mobile Development DAY 28

技術 KSP 的實作方向

這系列的文章不會講完全部 KSP 的實作,畢竟我也還正在實作中,不過實作的方向應該是跟前幾篇講的差不多,只是換一個 annotation processor 的...

鐵人賽 Mobile Development DAY 18

技術 D18/ 怎麼在 Compose 中取得 Permission? - rememberLauncherForActivityResult

今天大概會聊到的範圍 rememberLauncherForActivityResult 上一篇我學到可以透過 AndroidView 中將 Came...

鐵人賽 AI & Data DAY 28

技術 [Day 28] Android Studio 七日隕石開發:把 tflite 模型放進 app

0. 前言 距離真正完成表情辨識的App,只差把辨識圖像的功能實作出來,在這裡我們必須將Day21存好的TFLite模型拿出來,製作出含有metadata的TF...

鐵人賽 Mobile Development DAY 27

技術 Re-architect - Domain Layer (二)

上一次介紹完了介面,今天就要來說說實作的部分了,從這裡開始我要採取一種“小步快跑”的方式,原本 EditorViewModel 負責處理所有的商業邏輯,現在將原...

鐵人賽 Mobile Development DAY 17

技術 Navigation (1)

經過了兩個多星期後,我們終於開始進入 presentation layer 的部分。Presentation layer 就是做 UI 相關的東西,例如 Act...

鐵人賽 Mobile Development DAY 17

技術 110/17 - Android 6圖片剪裁

沒想到會因為圖片剪裁中斷,以前都偷懶使用uCrop,這次想說練習內建的剪裁,結果有夠麻煩 Android 6如果要圖片剪裁,路徑開頭是file://,所以要用U...

鐵人賽 Mobile Development DAY 16

技術 110/16 - 整合Android 6到Android 11

都把權限寫完了,該來做個小整理,這次我們整合Android 6到Android 11,沒有Android 5是因為太老舊,是該淘汰,沒有Android 12則是...

鐵人賽 Mobile Development DAY 17

技術 D17/ 我要用的 View 沒有支援 Compose 怎麼辦? - AndroidView

今天大概會聊到的範圍 Android View 前兩天來回進出了公司樓下的 7-11 兩三次,每次都要掃一次實名制的 QR Code。我現在用的 Ap...

鐵人賽 Mobile Development DAY 16

技術 Domain layer testing

今天會為上一篇所寫的兩個 use case 加上 unit test。 GetLinesAndStationsUseCaseImplTest 這個 test 其...

鐵人賽 Mobile Development DAY 26

技術 Re-architect - Domain Layer (一)

上一天我們提到了 Domain Layer 會包含以下三個組件:CoEditor, ContextMenu, NoteRepository ,今天我們將著重在介...

鐵人賽 Mobile Development DAY 27

技術 KSP Setup

檢查 gradle 版本 把 gradle build script 改成 KTS 之後,我們可以先確認一下現有的 project gradle 的版本,最好是...

鐵人賽 Mobile Development DAY 26

技術 使用 KSP 來改善 annotation processor?

就在我們用 KAPT 開發完這個 RSS library 後幾個月 KSP 就發佈了! KSP 的全名是 Kotlin Symbol Processing ,是...

鐵人賽 Mobile Development DAY 16

技術 D16/ 所以到底為什麼 remember 是 composable function? - @Composable 是什麼 part 2

今天大概會聊到的範圍 compose runtime compose compiler 今天會更深入的研究 Compose 在執行過程中,發生了什麼...

鐵人賽 Mobile Development DAY 15

技術 Domain layer implementation

經過這麼多集的 data layer 後,我們來到 domain layer。Domain layer 的用途是用來放 business logic,並向 pr...

鐵人賽 Mobile Development DAY 25

技術 使用 Domain Driven Design 來進行架構設計

接續上一篇的故事,阿明跟小美又經過了幾次的對話與討論,在便利貼專案中整理歸納了下列這幾個關鍵字: CoEditor ViewPort Gesture Stic...

鐵人賽 Mobile Development DAY 25

技術 Reader 的 MockK 測試

Reader 是我們 Android library 裡面最外層的 API ,要測試它要先考慮它有跟那些元件作互動,以下列出了它有互動的元件: ktRssR...

鐵人賽 Mobile Development DAY 14

技術 110/14 - EasyPermissions與他的快樂伙伴

講到硬體控制,總有一天要面對權限管理,不過Google有個權限的第三方EasyPermissions,今天就簡單講一下怎麼安裝和使用。 安裝 https://g...

鐵人賽 Mobile Development DAY 15

技術 D15/ 為什麼 remember 是 composable function? - @Composable 是什麼

今天大概會聊到的範圍 @Composable compose compiler & runtime 爆個雷:今天的文章只會講前半段,還不會...

鐵人賽 Mobile Development DAY 14

技術 day14 channel實戰使用 with webSocket,後面離題講android接localhost

前言,今天寫一寫就離題了QQ,前面用ktor架websocket,在手機app接起來,複習一下channel的特性,後面離題講了手機怎麼接到localhost...

鐵人賽 Mobile Development DAY 14

技術 Flipper

在繼續實作 domain layer 之前,我們會介紹一個方便日常開發的工具:Flipper。 Android Studio 有個功能是查看 HTTP requ...