운영중인 안드로이드을 모니터링 하는 다양한 방법 가운데 가장 적은 비용으로 구축 할 수 있는 방법 중 하나는 Firebase Crashlytics 을 도입하는 것입니다. 제가 운영하는 Toy App 에서 웹뷰를 사용하는 앱이 있는데요. 그 앱에는 Firebase Crashlytics을 구축하여 앱 안정성을 모니터링 하고 있습니다. 최근 다음과 같은 Webviw에서 이슈가 발생했습니다. Caused by java.lang.RuntimeException Using WebView from more than one process at once with the same data directory is not supported. https://crbug.com/558377 : Current process com.x..
접근성 > 스크린 리더 > Voice Assistant 을 활성화 시시력이 약한 사용자를 위함 음성 피드백이 제공하게 됩니다. Android에서 Voice Assistant 처리하는 방법을 간단히 알아보겠습니다. 접근성(Voice Assistant) 등록 방법은 xml에 추가한 위젯(Widget)에 contentDescription 을 추가하면 됩니다. ‣ android:contentDescription="hello" 만약 Voice Assistant을 받지 않으려면 xml 에 다음과 같이 추가 하면 해당 부분은 Focus가 이동하지 않아 Voice Assistant 동작하지 않습니다. ‣ android:importantForAccessibility="no" Voice Assistant의 강제 이동으로 ..
타기업 공채의 우대사항에 Stetho Library 사용 가능자로 기재되어 있는 것을 보고 해당 라이브러리가 무엇이길래 우대 사항에 기재되어 있을지 알아봤습니다. Android 작업하면서 대표적으로 3가지의 불편함을 느낄 것입니다. 1. Log로 Network 통신 정보 기록 시 분석이 어렵다. 2. 내부 DataBase 내용 확인이 어렵다. (필자인 경우 Realm DB를 사용하는데 Realm 브라우저를 제공하여 확인이 편해서 사용하고 있습니다.) 3. Preference 의 저장된 값 확인이 어렵다. 많은 개발자들은 위 3가지 불편함을 해결할 라이브러리로 Stetho Library을 사용하고 있었습니다. 그렇다면 어떻게 설정하고 사용하는지 간단히 알아보겠습니다. Stetho Library 환경 설정하..
구글 플레이스토어에 앱 등록 후 잘 사용하고 있다가 어느 순간 앱 삭제 된 적이 있지 않으신가요? 구글에서 앱 거절하는 이유는 여러가지가 있는데 최근에 제가 겪은 이슈에 대해 이야기 하려고 합니다. 아침 커피를 마시며 퇴근 후 온 메일을 검토하는 중 구글에서 온 메일이 있었습니다. Hello Google Play Developer, After review, OOO, kr.co.000, has been removed from Google Play because it uses software that contains security vulnerabilities and violates our Malicious Behavior policy. Your app will not be available to users..
최근 Samsung Galaxy Z Flip 제품이 나오며 휴대성과 디스플레이의 확장성 모두 만족할 수 있게 되었습니다. 다양한 디바이스 환경에 맞춰 Android Jetpack에서 Window(창 관리자)가 추가되어 접이식 장치 디바이스 화면상태를 제공하고 있습니다. 더 다양한 디바이스 환경에 따른 화면 구성을 위해 Window APi을 활용하여 디바이스 화면 상태를 체크하는 방법에 대해서 알아보겠습니다. 환경 구성 build.gradle 파일에 Google Maven 저장소에 저장된 Window Manager 오픈소스를 추가합니다. 기기 상태 확인 기기 상태 확인을 위해 windowManager 의 디바이스 상태 변경 리스너를 등록합니다. 디바이스 상태 체크에 대해 Consumer interface을..
대부분의 List를 구현 시 RecyclerView 를 활용할 것입니다. 다수의 Data를 갖고있는 List의 Data를 갱신 시 깜박이는 것을 확인 할 수 있을 것입니다. 데이터 갱신 시 깜박이는 현상을 막을 수 있는 방법은 없을까요? 깜박이는 현상은 Data를 갱신하면서 List의 모든 Cell을 다시 그리면서 발생하고 있습니다. 그렇다면 이미 존재하고 있는 Cell을 다시 안그리는 방법은 없을까요? Adapter에 고유한 id를 을 갖고있다는 것을 설정하면 됩니다. val adatper = NewAdapter() //RecyclerView에 설정할 adapter adatper.setHasStableIds(true) 또한 Adapter의 getItemId을 override 하여 고유한 id를 선언합니..
STOMP을 Android 환경에서 사용하는 방법에 대해서 알아보겠습니다. 소개할 라이브러리는 Android STOMP 라이브러리 중 kotlin으로 작성된 라이브러리로 fork 하여 사용하였습니다. STOMP-KOTLIN 라이브러리 API DESC stomp-client-for-kotlin(fork) https://github.com/FaithDeveloper/stomp-kotlin 위에 명시된 라이브러리를 Android .gradle 에 dependencies 합니다. STOMP Client STOMP Client 사용법은 다음과 같이 나눌 수 있습니다. // 1. INIT val url = "ws://[domain]/connect/websocket" val intervalMillis = 1000L ..
채팅을 구현하는 방식은 XMPP, Websocket 등 다양한 방식으로 구현하고 있습니다. 이번 포스트는 필자가 직접 사용하였던 STOMP에 대해서 간략하게 공유하려고 합니다. 필자의 주관적인 이해한 내용을 적다보니 잘못 기입된 부분이 있을 수 있습니다. 잘못 된 부분에 대해 댓글로 남겨주시면 수정 하겠습니다. STOMP 무엇인가? Simple (or Streaming) Text Oriented Message Protocol 의 약자인 STOMP는 텍스트 기반의 메세징 프로토콜 입니다. STOMP 사용 환경은 TCP 나 WebSocket 과 같은 신뢰성있는 양방향 streaming network protocol 상에 사용될 수 있습니다. 문자로 설명으로 보는 것보다 STOMP 구조를 보면 이해하시는데 도..
- view
- java
- missioon
- 선교
- 고시문
- flutter
- 안드로이드
- 패턴
- 디자인패턴
- IOS
- push
- 탁구
- RXjava
- 코틀린
- Kotlin
- Android Studio
- 점수판
- 고시문헬퍼
- 임용고시
- swift
- Android
- MCC
- IT
- 스코어헬퍼
- 미션차이나센터
- issue
- 알고리즘
- DI
- missionchina
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |