일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- cloud-firestore
- socket.io
- 워치
- mosquitto
- BottomSheetDialog
- Flavors
- Firebase
- Dva
- firebase-database
- TIZEN
- socket-server
- git-push
- Java8
- ozd
- OZViewer
- hung-up
- NoSuchMethodError
- AWS
- socket-client
- Galaxy Watch
- google-login
- Android
- ActivityResult-API
- Kotlin
- git
- 오즈뷰어
- gradle
- mqtt
- firebase-storage
- JNI
- Today
- Total
목록개발/Android (58)
Hyeyeon blog
1. 정의 A pragmatic lightweight dependency injection framework for Kotlin developers (Dependency Injection 보다 Service Location에 가까움) 2. 대상 코드 생성의 부하 때문에 작거나 중간 사이즈의 앱에 적합 3. Dagger vs Koin Dagger는 컴파일 과정에서 DI를 주입하기 때문에 컴파일 오버헤드가 있는 반면, Koin은 런타임 시 DI를 주입하기 때문에 상대적으로 런타임 오버헤드가 있음 4. 기본 사용법 (1) gradle.xml 1. build.gradle(Project) buildscript { ext.koin_version = '2.2.2' } 2. build.gradle(Module) dep..
1. Encode Base64 - Base64.NO_WRAP : Base64 값의 마지막에 붙는 '\n'를 삭제 val target = "TEXT" val base64 = Base64.encodeToString(target.toByteArray(StandardCharsets.UTF_8), Base64.NO_WRAP) 2. Encrypt SHA-512 - MessageDigest algorighm으로 MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512 사용 가능 fun getEncrypt() : String{ val target = "TEXT" val messageDigest = MessageDigest.getInstance("SHA-512") val digest = md...
※ SMS, 전화 퍼미션 관련 구글 정책 1. AndroidManifest.xml 2. 사용하려는 Activity에 BroadcastReceiver 구현 및 등록 import android.content.BroadcastReceiver lateinit var receiver : BroadcastReceiver ... private fun initSmsReceiver() { receiver = object : BroadcastReceiver() { override fun onReceive(context: Context?, intent: Intent?) { if ((intent!!.action as String) == Flag.SMS_RECEIVED) { val bundle = intent.extras va..
::.isInitialized 사용 lateinit str : String if(::str.isInitialized) { ... }
1. Dependency Injection - 컴포넌트간의 의존 관계를 소스코드 내부가 아닌 외부 설정 파일등을 통해 정의되게하는 디자인 패턴중 하나- 객체를 직접 생성하지 않고 외부에서 주입한 객체를 사용하는 방식- 코드간의 커플링을 줄이며 유닛테스트를 용이하게 함 2. Service Locator [Wikipedia]- '서비스 로케이터' 라는 중앙 등록자를 두어, 요청이 들어왔을 때 특정 업무를 수행하기 위한 정보를 반환한다.- apk 크기, 빌드 속도, 메서드 수 등 복잡한 제약이 있는 경우 사용하기 편하다. 3. Dependency Injection vs Service Locator Dependency Injection Service Locator 일부 핵심 클래스에 종속성을 주입 모든 클래스가..
1. floating button size app:fabCustomSize="78dp" 2. icon size in floating button // res/values/dimens.xml 45dp
1. layout 2. change label color - 미지정시, textColorHint 값과 동일
Realm DB : 내장 데이터베이스 라이브러리 [Reference](1) 데이터 모델- '데이터 컨테이너' 모델을 사용하여 Realm에 객체로 저장 (ORM이 아님)(2) Realm- Realm의 데이터베이스 컨테이너의 인스턴스- Realm은 단일 애플리케이션 차원의 DB가 아님: 하나의 애플리케이션에서 여러 Realm을 사용하여 데이터를 구성/저장- Realm은 테이블이 아님 : 전형적으로 테이블은 한 종류의 데이터만 저장하지만, Realm은 여러 종류의 객체를 저장할 수 있음(3) 특징- lazy loading- Realm Object에 대한 호출 Thread를 유지해야 함- 라이브러리 크기가 큼