Android Code

Composition Local ใน Jetpack Compose

Composition Local เป็นวิธีส่งข้อมูลจาก Composable ลงไปตาม UI Tree แบบ Implicit เพื่อให้ Composable ข้างในเรียกใช้งานข้อมูลดังกล่าวได้ทันที โดยไม่ต้องส่งผ่าน Function Parameter หรือที่เรียกว่า Explicit Parameter

Composition Local ใน Jetpack Compose
Android Code

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - การสร้าง Configuration Sharing Plugin เพื่อใช้งานใน Library Module

โดยปกติแล้ว Library Module แต่ละตัวมักจะมีโค้ดของ Gradle ที่คล้ายกันทำให้เราสร้าง Gradle Plugin เพื่อแชร์โค้ดตรงจุดนี้ได้

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - การสร้าง Configuration Sharing Plugin เพื่อใช้งานใน Library Module
Android Code

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - การสร้าง Firebase Plugin เพื่อแยกคำสั่งของ Firebase ออกจาก App Module

บทความนี้จะเป็นการสร้าง Gradle Plugin เพื่อกำหนดค่าต่าง ๆ สำหรับ Firebase Plugin แล้วนำไปใช้งานในโปรเจคของเรา

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - การสร้าง Firebase Plugin เพื่อแยกคำสั่งของ Firebase ออกจาก App Module
Android Code

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - การสร้าง Dependency Sharing Plugin เพื่อใช้กับทุก Module

ในบทความนี้เราจะมาสร้าง Gradle Plugin ที่จะรวม Dependency หรือ Library ต่าง ๆ ที่ใช้บ่อย ๆ ในทุก Module ไม่ว่าจะเป็น App Module หรือ Library Module ก็ตาม

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - การสร้าง Dependency Sharing Plugin เพื่อใช้กับทุก Module
Android Code

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - Getting Started

หลังจากเข้าใจโครงสร้างของ Android Gradle Plugin เบื้องต้นแล้ว สิ่งที่ต้องทำก่อนที่จะเขียน Gradle Plugin หรือ Convention Plugin ก็คือการเตรียมโปรเจคให้พร้อมเสียก่อน

สร้าง Gradle Plugin ด้วย Kotlin เพื่อใช้งานบน Android - Getting Started
Android Code

สร้าง UI ให้ได้ดั่งใจด้วย Shape ใน Jetpack Compose

Shape เป็นหนึ่งในความสามารถบน Jetpack Compose ที่ช่วยให้นักพัฒนาสามารถสร้าง UI ในรูปทรงต่าง ๆ ได้หลากหลายตามความต้องการ ซึ่งจะช่วยให้นักพัฒนาสร้าง UI ที่มีรูปร่างซับซ้อนได้ง่ายเมื่อเทียบกับ Android Views)

สร้าง UI ให้ได้ดั่งใจด้วย Shape ใน Jetpack Compose
Android Code

มาเปลี่ยน Gradle ของเราให้ใช้ Kotlin แทน Groovy กันดีกว่า - Migration

เพราะปัญหาสำหรับนักพัฒนาแอนดรอยด์ที่ยังใช้ Groovy อยู่ เพราะต้องทำงานกับโปรเจคเก่าที่เป็น Groovy ทำให้เวลาย้ายไปใช้ Kotlin ก็จะต้องแก้โค้ดเก่าที่มีอยู่ด้วย

มาเปลี่ยน Gradle ของเราให้ใช้ Kotlin แทน Groovy กันดีกว่า - Migration
Android Code

การเขียนไฟล์ลงใน Device Storage บนแอนดรอยด์

เพราะการพัฒนาแอปบนแอนดรอยด์ในบางครั้ง นักพัฒนาก็อาจจะต้องเก็บข้อมูลลงในอุปกรณ์แอนดรอยด์ให้อยู่ในรูปของไฟล์ด้วยเหตุผลใด ๆ ก็ตาม

การเขียนไฟล์ลงใน Device Storage บนแอนดรอยด์
Android Code

มีแอปที่เปิดใช้งาน Accessibility อยู่หรือป่าวนะ?

แอปที่ต้องการความปลอดภัยในการใช้งานสูง บางครั้งก็อาจจะไม่ต้องการให้มีแอปที่เกี่ยวกับ Accessibility ทำงานในระหว่างใช้งานแอป จึงทำให้นักพัฒนาต้องคอยเช็คว่ามีแอปดังกล่าวทำงานอยู่ในระหว่างนั้นหรือไม่

มีแอปที่เปิดใช้งาน Accessibility อยู่หรือป่าวนะ?
Android Code

ส่งข้อมูลระหว่าง Activity/Fragment แบบง่าย ๆ ด้วย Fragment Result API

เพื่อให้การส่งข้อมูลระหว่าง Activity/Fragment ↔ Fragment สามารถทำได้ง่ายขึ้น ทำให้ทีมแอนดรอยด์เพิ่ม Fragment Result API เพื่อเป็นทางเลือกหนึ่งสำหรับนักพัฒนา

ส่งข้อมูลระหว่าง Activity/Fragment แบบง่าย ๆ ด้วย Fragment Result API
Android Code

การเรียกใช้งาน Activity ที่มีการส่งข้อมูลกลับด้วย Activity Result API

Activity Result API เป็นหนึ่งในความสามารถของ AndroidX ที่จะช่วยให้นักพัฒนาเปลี่ยนวิธีการใช้คำสั่ง startActivityForResult ให้ง่ายกว่าที่เคยเป็นมา

การเรียกใช้งาน Activity ที่มีการส่งข้อมูลกลับด้วย Activity Result API
Android Code

ทำ Image Resize บนแอนดรอยด์อย่างไรให้มีประสิทธิภาพ

Image Resize บนแอนดรอยด์เป็นการทำงานที่มีโอกาสเกิด Out of Memory ได้ง่ายถ้าทำผิดวิธี ดังนั้นมาใช้วิธีที่ถูกต้องเพื่อให้ได้ประสิทธิภาพมากที่สุดกันเถอะ

ทำ Image Resize บนแอนดรอยด์อย่างไรให้มีประสิทธิภาพ