J.
BLOG
글 목록소개구독
태그

#Android.

/ 총 10편
2026.08.06
읽기 9분

픽셀보다 계약: UIKit·Jetpack Compose 스도쿠 보드 접근성

기술

하나의 9×9 커스텀 보드를 VoiceOver와 TalkBack이 탐색할 수 있는 81개 셀로 바꾸고, 위치·값·선택·오류·입력 동작을 두 플랫폼에 매핑하는 기준을 정리합니다.

AccessibilityUIKitJetpack ComposeiOSAndroid
2026.08.06
읽기 8분

iOS·Android·Web 광고 노출: loaded·rendered·impression 구분법

기술

광고 SDK의 load·impression·paid callback과 Web 가시성 신호를 분리해, 자동 수집과 수동 로깅이 중복되지 않는 이벤트 계약을 정리합니다.

iOSAndroidWebAdvertisingAnalytics
2026.08.06
읽기 9분

Game Center·Play Games 리더보드: 날짜 경계·제출 신뢰성

기술

퍼즐 날짜, 점수 제출 시각, 플랫폼 표시 구간을 분리하고 best-effort 보류와 durable outbox 사이에서 리더보드 전달 보장을 선택하는 방법을 정리합니다.

iOSAndroidGameKitGoogle Play GamesTesting
2026.08.06
읽기 12분

같은 날, 같은 퍼즐: generatorVersion이 있는 PuzzleIdentity 설계

기술

같은 seed를 재현하는 것과 같은 퍼즐을 영구히 식별하는 것은 다르다. DailySudoku의 날짜·시간대·난이도·생성기 흐름을 바탕으로 generatorVersion, 마이그레이션, 롤백 계약을 정리합니다.

RustTestingiOSAndroidWebAssembly
2026.08.06
읽기 8분

위치 권한 없이 광고를 지역화하기: GeoIP와 Provider Chain 설계

기술

OS 위치 권한 없이 동의 상태와 GeoIP 힌트로 광고 Provider Chain을 구성하고, 실패를 안전하게 흡수하는 방법을 정리합니다.

iOSAndroidAdvertisingPrivacyGeoIP
2026.08.06
읽기 10분

일회성 광고 제거 IAP: StoreKit 2·Play Billing에서 구매와 권한 분리하기

기술

결제 완료 콜백을 영구 권한으로 착각하지 않고, 앱 시작·다른 기기·pending·환불 뒤에도 광고 제거 상태를 다시 맞추는 StoreKit 2와 Play Billing 계약을 정리합니다.

iOSAndroidStoreKitGoogle Play BillingIn-App Purchase
2026.07.05
읽기 6분

Rust 공통 모듈을 크로스플랫폼에서 공유하기 - 5편. Android 네이티브 라이브러리 패키징

기술

Rust 공통 모듈을 Android 앱에 넣을 때 ABI별 .so, Gradle task, UniFFI adapter, 16 KB page size 검증을 release artifact 기준으로 정리합니다.

RustAndroidKotlinGradleNDK
2026.06.30
읽기 6분

Rust 공통 모듈을 크로스플랫폼에서 공유하기 - 3편. UniFFI로 iOS와 Android 연결하기

기술

Rust 공통 모듈을 iOS와 Android에서 함께 쓰기 위해 UniFFI 바인딩을 설계하고, generated binding을 adapter 뒤에 숨기는 구조와 모바일 런타임 고려사항을 정리합니다.

RustiOSAndroidUniFFIFFI
2026.06.26
읽기 6분

Rust 공통 모듈을 크로스플랫폼에서 공유하기 - 2편. FFI 경계와 API 설계

기술

Rust 공통 모듈을 크로스플랫폼에서 안전하고 효율적으로 호출하기 위해 FFI 경계를 잡고 API를 설계하는 구체적인 실무 전략을 정리합니다.

RustiOSAndroidWebAssemblyFFI
2026.06.24
읽기 6분

Rust 공통 모듈을 크로스플랫폼에서 공유하기 - 1편. 어디까지 Rust로 묶을 것인가

기술

iOS·Android·Web에서 Rust 공통 모듈을 공유할 때 도메인 엔진의 경계를 어떻게 잡을지 정리한다. 무엇을 sudoku-core에 넣고 무엇을 플랫폼에 남길지, UniFFI·WASM 바인딩 계층과 앱 adapter 구조까지 다룬다.

RustiOSAndroidWebAssembly
전체 글 보기
© 2026 진재명 · blog.jaemyeong.com
iOS 소프트웨어 엔지니어 · 부산