일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- SWIFTUI
- 동영상
- Android 13
- MediaSession
- Reactive
- node
- rx
- google play
- node.js
- MotionLayout
- RxKotlin
- GCP
- 테스트 자동화
- Kotlin
- Observable
- android13
- Android
- mysql
- PagingLib
- Animation
- 인앱결제
- MediaPlayer
- php
- list
- SwiftUI Tutorial
- mvvm
- Koin
- junit
- databinding
- paging
- Today
- Total
목록전체 글 (145)
봄날은 갔다. 이제 그 정신으로 공부하자
NFC와 RFID는 서로 다른 표준 규격이지만 우리는 NFC와 RIFD를 구분하지 못하고 혼용해서 이야기하는 경우가 많습니다. 그 이유는 RFID는 3개(LF, HF, UHF)의 주파수 대역이 있는데 그 중 HF 대역이 13.56MHz 주파수를 사용하기 때문입니다. 13.56MHz 주파수 대역은 NFC가 사용하는 주파수 대역 입니다. @_@ 그렇기 때문에 NFC카드 리더기에 NFC 카드가 아닌 RFID(HF 대역 사용) 카드도 인식이 잘 됩니다. ^__^;;; 대부분 카드 사용자들은 지급받은 카드(or 칩이 내장된 스티커)가 카드가 어떤 카드인지 잘 모르는 상태에서 리더기에 가볍게 접촉(태깅)하는 형태로 사용합니다. 상황이 이렇다보니 일반적인 상황에서는 NFC와 RFID 구분이 의미가 없어지는 거지요. ..
안드로이드는 소스가 오픈되어 있기 때문에 많은 개발자 및 회사에서 안드로이드를 기반으로한 다양한 디바이스를 만들거나 안드로이드 장치와 연동이되는 주변 장치를 만들고 있습니다. 당장 온라인 마켓에 들어가 키오스크나 네비게이션을 검색해보아도 많은 회사들이 안드로이드 기반으로 제품을 생산한다는 것을 알 수 있습니다. 안드로이드를 더이상 핸드폰이나 타블렛에 탑재되는 OS로 한정하기는 곤란해보이는 상황 입니다. 각설하고 안드로이드 디바이스가 많이 출시되다보니 안드로이드에 연동되는 다양한 주변장치가 많아지고 있는데, 이 글에서는 안드로이드에서 NFC 카드와 USB 디바이스를 연동하는 방법에 대해 설명 합니다. NFC 연동 Android는 기본적으로 NFC read / write 기능을 지원합니다. 해당 기능을 사용..
이전 글에서 여러가지 형태의 List 샘플 기초를 만들어보았는데요. 실제 앱을 개발하다보면 이전 글과 같은 단순한 리스트를 만드는 경우는 거의 없습니다. 거의 대부분이 network API를 사용해 리스트 목록을 가져오고 페이징은 기본이면 필요에 따라 DB를 사용하기도 합니다. 또한 리스트 목록 사이사이에 광고가 포함되기도 하지요. 이 글에서는 이러한 다양한 요구사항에 대응할 수 있는 리스트를 만들어 보도록 하겠습니다. 이 글에서는 혼선을 최소화 하고자 Network 부분은 제외하고 설명합니다. 페이징에서 Network API 연동은 아래 글을 참고하시면 됩니다. https://als2019.tistory.com/22 프로젝트에 ROOM 추가하기 build.gradle에 아래와 같이 ROOM 종속성을 추..
이 글은 MVVM 구조에서 다양한 리스트 사용법에 대해 설명하는 글 입니다. 저는 이글을 통해 다양한 방식으로 리스트를 만들 수 있다는 것을 설명하고자 하는 것으로 반드시 아래 예시에 나와 있는대로 리스트를 만들 필요는 없습니다. 기본 리스트 만들기 (Single item + BindingAdapter) ViewModel에서 10개의 아이템을 생성해주고 Layout xml에서 BindingAdapter를 사용해 RecyclerView.Adapter와 ViewModel에서 생성한 List Item을 연결해줍니다. 이렇게 사용할 때는 view(Activity)는 별도의 처리를 해주지 않아도 됩니다. // DefaultViewModel.kt class DefaultViewModel: BaseViewModel(..
대부분의 앱은 android 제공하는 버튼을 Custom해서 개발됩니다. custom 버튼을 만들기 위해 Nine patch 이미지를 사용하기도 하지만 drawable 객체를 만들어서 버튼을 custom하는 것이 여러가지로(확장성, 재활용성, …) 더 좋습니다. 이 글에서는 drawable 객체를 사용해 Custom 버튼을 만드는 법에 대해 설명합니다. 이 글에 설명된 내용에 대해 조금 더 자세히 알고 싶으신 분들은 아래 사이트 참고하시면 됩니다. https://developer.android.com/guide/topics/resources/drawable-resource 드로어블 리소스 | Android 개발자 | Android Developers 드로어블 리소스는 화면에 그릴 수 있으며 getDraw..
참고 사이트: https://developer.android.com/google/play/billing/test?hl=ko 라이선스 테스터를 사용하면 다음과 같은 이점이 있습니다. 장점 1 서명되지 않아 Google Play에 업로드되지 않은 앱의 경우 Google Play 결제 라이브러리가 일반적으로 차단됩니다. 라이선스 테스터는 이 검사를 건너뛸 수 있습니다. 즉, 앱의 새 버전에 업로드할 필요 없이 디버그 서명이 있는 디버그 빌드를 사용하는 앱의 경우에도 테스트용으로 앱을 사이드로드할 수 있습니다. 패키지 이름은 Google Play용으로 구성된 앱 이름과 일치해야 하며 Google 계정은 Google Play Console 계정의 라이선스 테스터여야 합니다. 장점 2 라이선스 테스터는 테스트에 실..
프로모션 또는 프로모션 코드를 사용하려면 한정된 수의 사용자에게 무료로 일회성 제품이나 정기 결제 무료 체험판을 제공할 수 있습니다. 사용자는 앱 또는 Google Play 스토어 앱에서 프로모션 코드를 입력하고 무료로 해당 항목 또는 정기 결제 무료 체험판을 받습니다. Play Console내에서 다음 유형의 프로모션 코드를 생성할 수 있습니다. 일회용 코드: 자동으로 생성되는 고유한 코드로, 사용자가 한 번만 사용할 수 있습니다. 사용자는 Play 스토어나 앱 내에서 직접 일회용 코드를 사용할 수 있습니다. 맞춤 코드: 미리 정해진 한도까지 여러 번 사용할 수 있는 맞춤 코드를 지정할 수 있습니다. 맞춤 코드는 정기 결제용으로만 제공되며 이전에 정기 결제를 이용해 본 적이 없는 사용자만 사용할 수 있..
이 글에서는 갱신 및 만료와 같은 정기 결제 수명 주기 이벤트를 처리하는 방법을 설명합니다. 또한 프로모션을 제공하고 사용자가 자신의 정기 결제를 관리하도록 허용하는 등의 추가 정기 결제 기능에 대해서도 설명합니다. 앱의 정기 결제 제품을 구성하지 않았다면 "002 Google Play 결제 시스템 - 준비하기" 문서의 "제품 생성 및 구성" 항목을 참고하세요. 참고 사이트: https://developer.android.com/google/play/billing/subs?hl=ko 정기 결제 수명 주기 처리 정기 결제는 전체 수명 주기 동안 다양한 상태 변경을 거칠 수 있으며 앱은 각 변경에 응답해야 합니다. 정기 결제 사용자의 상태를 확인하기 위해 앱은 Google Play 결제 라이브러리의 Bill..