adb shell setprop log.tag.FA VERBOSEadb shell setprop log.tag.FA-SVC VERBOSEadb logcat -v time -s FA FA-SVC
안드로이드에서 하단으로 가는 여러가지 방법이 있다.비교적 잘 알려져있는 방법이다.하지만 아이템이 맨 상단(position 0)에서 맨 하단(position 200)일 경우에는 스크롤하는 duration이 길어져 UX에 안 좋은 영향을 끼칠 수 있다.가장 확실한 예로는
웹뷰에서 스크롤을 감지하여 모션레이아웃을 실행해야하는 상황이 생기면서 검색을 해보면서 해결했던 것을 기록하고자 합니다.리스너는 총 세가지를 만듭니다.더이상 스크롤 할 수 없고 맨 하단에 닿았을 경우스크롤 업스크롤 다운먼저 웹뷰를 상속받은 커스텀 뷰를 만들어줍니다.인터페
웹뷰에서 제일 끝까지 내렸을때 콜백이 필요해서 찾아보았다.해결방법은 다양하지만 나는 커스텀뷰를 만드는 방법으로 해결했다.액티비티나 프래그먼트에 리스너를 익명 객체로 선언해준다(implements해도 무관)activity맨 하단에 있었을 때는 버튼이 활성화되고 조금만 올
안드로이드의 고질적인 문제 중에 하나인 중복 클릭 이슈가 있다.버튼 클릭시 post 메소드인 api가 호출된다면 멱등성이 지켜지지 못할 수 있다.ex:) 결제가 두 번 요청됨, 회원가입이 두 번 됨 등..대표적으로 몇 가지 방법이 있다.프로젝트에 Rxjava 프로젝트
서비스와 뷰(액티비티,프래그먼트)와 통신하기 위해서 여러가지 방법이 있지만 AIDL을 사용해보았다.클라이언트와 서비스가 모두 동의한 프로그래밍 인터페이스를 정의하여 프로세스 간 통신(IPC)으로 서로 통신할 수 있다.먼저 AIDL파일을 만들어준다.File -> New
같은 컴포넌트끼리 include하여 만들었지만 EditText를 눌렀을 떄 바텀시트가 나와야하는 상황이 생겼다. 그래서 코드로 EditText를 설정해주었다.이렇게 설정해주면 EditText를 눌렀을 때 키보드가 나오지 않게 된다.
로마어를 숫자로 변환하는 문제이다.Input: s = "III"Output: 3Explanation: III = 3여기서 까다로운 조건이 있다.V 또는 X는 전에 나오는 I는 4나 9가 되고L 또는 C 전에 나오는 X는 마찬가지로 40 또는 90이 된다는 점이였다.fo
item xml에서 마진을 주는 것보다 recyclerview에 addItemDecoration을 추가하는게 성능이 더 좋다는 글을 어디서 본 것 같다.먼저 ItemDecoration Class를 만들어준다.recyclerview에 추가해주면 끝
Single Activity Pattern 하나의 액티비티에 여러 뷰들이 있는 패턴으로 사이드 프로젝트를 진행 중이다. 하지만 바텀네비게이션이 필요한 뷰와 필요없는 뷰에 바텀네비게이션을 보여주거나 가려야하는 상황이 발생했다. 해결책 mainActivity.kt 먼
실무에는 아직 xml을 많이 쓰지만 Jetpack Compose에 대한 관심이 자연스럽게 생기게 되었다.이번 사이드 프로젝트에 써보면서 연습을 하기로 했다.compose version을 추가해준다.여기서 주의할 점은 코틀린 버전을 적절한 버전으로 설정해줘야한다.frag
스레드 하나에 루퍼, 핸들러, 메시지 큐를 하나씩 가지고 있다. 메시지 큐루퍼 내부에 존재, 외부 스레드로부터 핸들러를 통해 받은 메시지나 테스크를 저장하는 역할Runnable 객체면 핸들러에게 전달하지 않고 run()을 수행Message 객체 내부의 명시되어 있는 H
TCP/IP 4계층 제일 위에 있는 어플리케이션 계층웹서비스 통신에 사용됨기본적으로 한 연결당 하나의 요청을 처리하도록 설계됨 -> RTT 증가서버로부터 파일을 가져올 때마다 TCP 3-way-handshake를 계속해서 열어야하기 때문에 RTT가 증가하는 단점이 있음
RecyclerView Test를 하면서 기본적으로 테스트하기 어렵다는 생각이 들었다.androidTest 폴더를 만들고 테스트 클래스를 만든 다음 보일러플레이트 코드를 복사해주자해당 메서드는 N번째 Child를 View로 리턴해주는 함수다.그리고 해당 모듈들을 Imp
면접 질문 중 한 번씩 나올 수 있는 TCP/IP 4계층 모델을 공부해보자 인터넷 프로토콜 스위트(Internet Protocol Suite)? 인터넷에서 컴퓨터들이 서러 정보를 주고받는데 쓰이는 프로토콜의 집합이며, TCP/IP 4계층, OSI 7계층 모델로 설명할
위 예제에서 100개의 coroutine을 띄우고 각 코루틴은 전달받은 action을 1000번 수행한다.값이 보장되게 하려면 어떻게 해야할까?자바의 volatile 키워드 또는 코틀린의 @Volatile 애노테이션을 변수 선언시 지정할 수 있다. 사전적 의미로는 ‘휘
네트워크? 네트워크란 노드와 링크가 서로 연결되어 있거나 연결되어 있지 않은 집합을 의미한다. 네트워크는 컴퓨터 등의 장치들이 통신 기술을 이용하여 구축하는 연결망을 지칭한다. 처리량과 지연시간 처리량 링크를 통해 전달되는 시간 단위 시간당 데이터 단위로는 bps(
요즘은 xml로 DI를 주입하는게 아니라 annotation 기반의 자바 클래스를 만들 수 있음.현재 어노테이션으로 의존성 주입한 config 클래스이다.test 폴더로 가서 ApplicationContextInfoTest.java를 생성한다.현재 주입하고 있는 클래스
관점지향 프로그램스프링 어플리케이션은 대부분 특별한 경우를 제외하고는 보통 MVC 웹 어플리케이션 WebLayer,Buisness Layer, Data Layer로 정의된다.RestAPI를 제공하며 Client중심의 로직 적용내부 정책에 따른 Logic을 개발하며, 주