a Developer, Student, Learner.

์ฝ”ํ‹€๋ฆฐ์˜ ์ธ๋ผ์ธ ํด๋ž˜์Šค์˜ ํ•„์š”์„ฑ๊ณผ ์‚ฌ์šฉ๋ฒ•

An inn in a fantasy world

์ธ๋ผ์ธ ํด๋ž˜์Šค๋Š” ์ฝ”ํ‹€๋ฆฐ 1.3๋ถ€ํ„ฐ ์•ŒํŒŒ๋ฒ„์ „์œผ๋กœ ๋„์ž…๋œ ์ƒˆ๋กœ์šด ํƒ€์ž…์„ ์•ˆ์ „ํ•˜๊ณ  ์ตœ์ ํ™”๋œ ํ˜•์‹์œผ๋กœ ์ •์˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ธ๋ผ์ธ ํด๋ž˜์Šค๋ฅผ ์•Œ์•„๋ณด๊ธฐ ์ „์—, ์ธ๋ผ์ธ๊ณผ ์ฝ”ํ‹€๋ฆฐ์˜ ์›์‹œํ˜• ์ปดํŒŒ์ผ๋Ÿฌ ์ตœ์ ํ™”์— ๋Œ€ํ•ด ์ž ๊น ์‚ดํŽด๋ณด๊ณ  ์ธ๋ผ์ธ ํด๋ž˜์Šค์˜ ํ•„์š”์„ฑ๊ณผ ์‚ฌ์šฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

References

์ฝ”ํ‹€๋ฆฐ ๊ณต์‹๋ฌธ์„œ

์ธ๋ผ์ธ, ์ธ๋ผ์ธ ํ•จ์ˆ˜

์ธ๋ผ์ธ์ด๋ž€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์ฃผ๋กœ โ€ฆ

ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ 4.1 ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๋“ค๊ณผ ๋ณ€๊ฒฝ ์‚ฌํ•ญ๋“ค

์–ด๋Š๋‚  ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜์—ˆ๋‚˜ ๋ณด๋‹ˆ ์ œ๊ฐ€ ์“ฐ๊ณ ์žˆ๋˜ 4.0.5 ์—์„œ 4.1.3 ๋กœ ๊ธ‰๊ฒฉํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค(์‚ฌ์‹ค ์ œ๊ฐ€ ๋ณ„ ๊ด€์‹ฌ ์—†์—ˆ์Šต๋‹ˆ๋‹ค). ์ด์™€ ๊ด€๋ จํ•ด์„œ 4.1 ๋ฒ„์ „์˜ ์ƒˆ๋กœ์šด ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด ๊ธฐ๋Šฅ๋“ค๊ณผ ๋ณ€๊ฒฝ์ ๋“ค์„ ์‚ดํŽด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ง€๋ ค ํ•ฉ๋‹ˆ๋‹ค.

4.0 ๋ฒ„์ „์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด ๊ถ๊ธˆํ•˜์‹  ๋ถ„๋“ค์€ ๋‹ค โ€ฆ

Android Bound Service์˜ ๊ฐœ๋…๊ณผ IBinder, Messenger, AIDL์„ ์ด์šฉํ•œ ๊ตฌํ˜„

์•ˆ๋“œ๋กœ์ด๋“œ, ์–ด๋””๊นŒ์ง€ ์•„์„ธ์š” ์‹œ๋ฆฌ์ฆˆ์˜ ์„ธ ๋ฒˆ์งธ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ด์ „์— ๋‹ค๋ฃจ์—ˆ๋˜ ์„œ๋น„์Šค ์ปดํฌ๋„ŒํŠธ๋ฅผ ์—ฐ์ด์–ด ์ž‘์„ฑํ•˜๋ฉฐ Bound Service์™€ IPC ๋ฐ AIDL์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Bound Service

https://developer.android.com/guide/components/bound-services

๋ฐ”์ธ๋”ฉ๋œ ์„œ๋น„์Šค๋Š” ์‹œ์ž‘๋œ โ€ฆ

์•ˆ๋“œ๋กœ์ด๋“œ์˜ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ž‘์—… ์ฒ˜๋ฆฌ ์ข…๋ฅ˜์™€ Service์˜ ์ดํ•ด๋ฐ ๊ตฌํ˜„

์•ˆ๋“œ๋กœ์ด๋“œ, ์–ด๋””๊นŒ์ง€ ์•„์„ธ์š” ์‹œ๋ฆฌ์ฆˆ์˜ ๋‘ ๋ฒˆ์งธ ๊ธ€์ž…๋‹ˆ๋‹ค. ์ด ํฌ์ŠคํŒ…์€ ์•ˆ๋“œ๋กœ์ด๋“œ์˜ 4๋Œ€ ์ปดํฌ๋„ŒํŠธ ์ค‘ ํ•˜๋‚˜์ธ Service์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๋ชฉ์ ์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ Service์— ๋Œ€ํ•ด ์•Œ์•„ ๋ณผ๊ฒƒ์ด ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— 2๋ผ๋Š” ๋Œ€๋‹จ์› ์•ˆ์— ์ชผ๊ฐœ์„œ ํฌ์ŠคํŒ…์„ ์ž‘์„ฑํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ํฌ์ŠคํŒ…์—์„œ๋Š” Android์˜ Background ta โ€ฆ

APK bundling, Proguard, R8, D8, Desugaring โ€ฆ

์•ˆ๋“œ๋กœ์ด๋“œ, ์–ด๋””๊นŒ์ง€ ์•„์„ธ์š” ์‹œ๋ฆฌ์ฆˆ๋Š” ์•ˆ๋“œ๋กœ์ด๋“œ ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ํŠน์ˆ˜ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ, ๊ณ ๊ธ‰ ๊ธฐ์ˆ ์ด ํ•„์š”ํ•œ ์ƒํ™ฉ์ผ ๋•Œ๋ฅผ ๋Œ€๋น„ํ•˜๊ฑฐ๋‚˜ ์•ˆ๋“œ๋กœ์ด๋“œ๋ž€ ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ์ดํ•ด๋ฅผ ๋ชฉ์ ์œผ๋กœ ์ž‘์„ฑ๋˜๋Š” ํฌ์ŠคํŒ…๋“ค์ž…๋‹ˆ๋‹ค.

์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ๊ฐœ๋ฐœ์ž๋ผ๋ฉด Android Studio๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์„ ๋นŒ๋“œํ•˜๊ณ  ๋””๋ฐ”์ด์Šค์— ์„ค์น˜๋ฅผ ํ•˜์—ฌ โ€ฆ

New react-native-reanimated v2 API and concept

Animation in React Native

Had you ever implement animation in the React Native development process? The only way to create animation with React Native core is Animated API.

The Animated API of React Native provides an easy API for animation and it can cover over 90% of use cases. It has duration-based animation orโ€ฆ

JVM ๊ธฐ๋ฐ˜ ์–ธ์–ด์ธ Java์™€ Kotlin์˜ ์™€์ผ๋“œ์นด๋“œ์™€ ๋ถˆ๋ณ€(invariance), ๊ณต๋ณ€(covariance), ๋ฐ˜๋ณ€(contravariance)์— ๋Œ€ํ•ด

์ด ๊ธ€์€ ์ฒจ๋ถ€ํ•œ ๊ณต์‹ ๋ฌธ์„œ์˜ ์˜ˆ์‹œ์™€ ์„ค๋ช…์„ ์ฐธ๊ณ ํ–ˆ์œผ๋ฉฐ ๋ฒˆ์—ญ๊ณผ ๋”๋ถˆ์–ด ์•ฝ๊ฐ„์˜ ์„ค๋ช…์„ ๋ง๋ถ™์—ฌ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ œ๋„ค๋ฆญ

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋“ค์—์„œ ์ œ๊ณตํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜์ธ โ€ฆ

์•ˆ๋“œ๋กœ์ด๋“œ Jetpack์˜ Security ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ตฌํ˜„์›๋ฆฌ์™€ EncryptedFile, EncryptedSharedPreferences ์˜ ์‚ฌ์šฉ๋ฒ•

TL;DR

์ƒ˜ํ”Œ ํ”„๋กœ์ ํŠธ์˜ ํŒจํ‚ค์ง€ ๋ฃจํŠธ/authentication ์—์„œ Security๋ฅผ ์‚ฌ์šฉํ•œ ์ฝ”๋“œ๋ฅผ ์‚ดํŽด๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Jetpack Security

Jetpack์˜ ์ƒˆ๋กœ์šด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ค‘ ํ•˜๋‚˜์ธ Se โ€ฆ

Explorer new Material design library motion features

TL;DR

You can see how to implement material motion in my sample project.

MDC rescues us from confusing transition effects

Navigation in mobile development is not an easy one. We must consider how screens are pushed into the stack and pop with an appropriate order. Also, transition animation in the navigationโ€ฆ

MJ Studio

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store