Hi there, I’m Daniel. 👋

  • 一位 Android 工程師,每天對於如何在茫茫技術海中存活感到憂慮。
  • 每次動筆都不斷告訴自已:筆記不是為了別人,而是為了自己。
  • 在這裡,我將分享我在開發中經歷的大小事,不論是各種奇怪的 Bug,還是學習過程中的心得與反思;偶爾也會夾雜一些因為興趣而產生的分享。
  • 希望每個走進來的朋友,都能在這裡找到對你有幫助的資訊。

Jetpack Compose Image ContentScale.Crop 如何指定裁剪位置?用 BiasAlignment 解決

在製作縮圖類型的 UI 介面時,Jetpack Compose 的 Image 搭配 ContentScale.Crop 是常見的做法。預設情況下會裁剪圖片中央,但若需要指定裁剪位置,可以透過 alignment 參數來調整。對於基本的上下左右對齊,Alignment 的 companion properties 即可滿足;若需要更精細的控制,則可以使用 BiasAlignment,以 -1f 到 1f 的偏移量來指定水平與垂直方向的裁剪位置。此外,文章也介紹了 BiasAbsoluteAlignment,與 BiasAlignment 的差異在於前者使用絕對的左右方向,後者則會依據 LTR / RTL 語系自動調整,適合需要支援國際化的 UI 設計。

Published on March 22, 2026 · 1 分鐘 · 170 字 · Daniel Huang
用 Android Studio 的內建 WebP 轉檔功能 讓 App 輕鬆瘦身

用 Android Studio 的內建 WebP 轉檔功能 讓 App 輕鬆瘦身

本文示範 Android Studio Convert to WebP 的完整步驟與參數設定(Lossy / Lossless),並透過 APK Analyzer 比較轉檔前後大小,快速完成 App 圖片瘦身。

Published on March 21, 2026 · 1 分鐘 · 78 字 · Daniel Huang

如何檢查與移除 macOS 上的 JDK

本文示範在 macOS 檢查 JDK 版本、查看已安裝的版本清單,並移除指定的 JDK。

Published on March 20, 2026 · 1 分鐘 · 96 字 · Daniel Huang

我以為是權限問題,結果是 Google Play 的控管型發布讓我不能下架 App

記錄在 Google Play 取消發布 App 時,因未關閉「控管型發布」導致「未發布」選項無法選取的問題。說明官方限制條件,並整理關閉控管型發布後即可順利解除發布的完整操作流程,作為備忘錄。

Published on January 6, 2026 · 1 分鐘 · 51 字 · Daniel Huang

SonarQube Community Build 新手指南:從安裝到整合 Android 專案的完整教學

SonarQube Community Build 是免費的原始碼品質與資安檢測工具。本篇文章從環境需求、安裝步驟到以 Gradle 建置的 Android 專案整合,完整示範如何在本機快速導入 SonarQube 並開始進行程式碼分析。

Published on December 3, 2025 · 2 分鐘 · 393 字 · Daniel Huang