原本今天最後一篇,只想做個總結,放放相關連結而已。不過剛好昨天心血來潮幫 EinkBro APP 導入了 Koin 的支援,今天就順手也記錄一下,讓大家當做參考...
原以為一個不到 3MB (扣除擋廣告的資料檔)的 Andrid App,既沒有任何的 tracking 機制,也沒有從網路抓任何非網頁內容的資料回來,理論上網頁...
今天大概會聊到的範圍 Animation 上一次有聊到,我們可以透過 Gesture 和 State 來與 user 互動。例如下面這個例子: @Co...
Day 26 - HBuilderX 與 Native.js API 讀取圖片 在 Day 25 - HBuilder X 產生 apk 已經完成使用 HBui...
不太可能每個專案都那麼爽,可以把相片儲存在內部儲存空間/Android/data/packageName/files/,所以還是要練習把檔案儲存在內部儲存空間/...
今天會繼續寫 EtaResponseMapperTest。我們示範的 test case 是正常輸出班次的情景。首先是準備 response: val resp...
今天大概會聊到的範圍 State Gesture Modifier 在之前,都只是在介紹比較靜態的畫面。但今天如果想要和使用者互動時,該如何處理呢?...
上篇提到了 parser generator 在產生程式碼的時候,可以用四個步驟去拆解裡面的資訊並產生程式碼,我們現在來看一下範例吧! 進入範例之前,我們也複...
第二階段也接近到尾聲了,現在便利貼已經有了比較豐富的功能了,可以拖曳便利貼、改變顏色、改變文字、新增以及刪除。那麼檔案的結構又會是什麼樣子呢? 這邊的分類方式是...
上一篇我們講解怎麼產生目標 parser 的 parse 方法,這篇來講解 generator 的內部結構,這會用到上篇提到的 getParseFuncSpec...
新增相片後,要發送通知給相簿應用程式,這樣才能更新照片清單,這樣才能在相簿看到新增加的照片,使用者體驗才會好。 以前我們會用Intent.ACTION_MEDI...
今天來實作使用ActivityResultContracts.TakePicture()開啟相機,拍照後把照片儲存在Android/data/packageNa...
今天大概會聊到的範圍 AnnotatedString Text 在 Compose 中顯示文字時,我們可以使用 Text 這個 Composable。...
現在我們有了編輯便利貼頁面還有編輯文字頁面,該是時候好好的來思考要怎麼切換頁面了!流程如下:使用者選擇了某一個便利貼→看到選單出現→點擊編輯文字→跳轉到編輯文字...
KotlinParserGenerator 我們先從 kotlin 的 parser 講起,這邊會順便帶到一些 KotlinPoet 的進階用法。我們目標是讀取...
上一篇在實作 EtaResponseMapper 的時候我們用了 Java 8 開始有的 Instant、LocalDateTime 和 ZonedDateTi...
以前在寫應用程式的時候因為不懂、方便、隨性等各種原因,所以就在根目錄建立資料夾,把照片影片都往裡面丟,然後應用程式解除安裝後檔案還是存活在手機中。 Google...
為什麼要介紹上架到 F-Droid 而不是 Google Play Store 呢?關於上架到 Google Play Store 的教學已經多到不用我再多寫...
原先的 browser 實作就已經包含了無痕模式的細部功能,像是禁止使用 Cookie,和不記錄瀏覽歷史;但是卻沒有一個快速開關能夠進到一般瀏覽器支援的無痕模式...
今天的內容很短,因為實作還蠻容易的。 瀏覽網頁時,有些時候是在看影片。這時,如果沒有特別設定要系統保持清醒的話,常常會看到一半就因為系統睡眠時間到了,就把畫面關...
雖然 browser 已經可以支援多個分頁瀏覽了(全在同一個 Activity 中做切換),但有些時候還是需要有另一個裝載 WebView 的 Activity...
今天大概會聊到的範圍 Intrinsic measurements 今天的標題可能會讓人有點疑惑,但這是我寫出這段 Code 時的第一反應。 Colu...
上一篇的 repository 還欠一個 mapper 把 EtaResponse 轉成 EtaResult。我們首先準備一個通用的 interface: in...
相較於傳統的 Android View,Jetpack Compose 在 Android 開發上還有一個新的概念,那就是 Stateful (有狀態的) 還有...
Logger 在 compile time 的時候,不像我們一般再開發的時候很容易的去 log 一些我們要的資訊,這邊我們必須要透過 processor 提供的...
今天大概會聊到的範圍 layout modifier 上一次討論到 Modifier 時,覺得自己其實對物件如何繪製到畫面上其實一知半解。今天打算繼續...
前面講完官方的14種Contracts,但我們也能建立屬於自己的Contracts,以下範例是實作一個跟ActivityResultContracts.Star...
以往我們所熟悉的 Single source of truth 都是在針對資料層,概念上基本上這樣的:我們 App 的資料來源通常來說都有兩個,一個是網路,另一...
上一篇我們有提到用 KAPT 參數去呼叫 純 Kotlin 和 Android 的 code generator ,這篇要延續這個主題,繼續來講一下會怎麼樣去呼...
在上一篇,我們把 Ktor client 加到 Dagger 的 object graph 內。現在我們就繼續寫 data layer 部分。 跨 layer...