Android

    [개발] 트러블슈팅(Trouble shooting)이 뭘까?

    Trouble Shooting 시스템에서 발생하는 복잡한 문제들을 종합적으로 진단해 해결하는 것. 시스템이나 장치 등에서 발생한 장애를 각종 수법을 써서 원인을 추구하고, 찾아내는 것. IT용어로 시스템에서 발생하는 복잡한 문제들을 종합적으로 진단해 처리한다는 뜻이다. 1. 문제정의 문제가 되는 동작 확인 2. 사실 수집 정의된 문제에 대해 대략의 점검 항목과 내용을 결정 문제를 재현하는 방법도 수집 3. 원인 추론 수집된 자료를 바탕으로 문제의 원인을 추론하는 단계 4. 조치 방안 작성과 구현 단계 추론한 원인에 따른 조치 방안을 마련하고 구현 단계를 거쳐 문제를 해결 5. 결과 관찰 조사 방법을 구현하고 그 결과를 기록 만약 문제가 해결되지 않았다면 4번으로 돌아감. 6. 문서 작성 문제를 해결한 순..

    [면접] 안드로이드 주니어 개발자 면접 질문정리

    - OAuth 사용 경험 - CI/CD - 동아리나 스터디 활동? - MVVM의 이점 - Base 사용 - Dexguard, Proguard 사용 - 선배의 코드를 변경하거나 수정해서 사용해본 경험 - 오픈소스를 프로젝트에 맞추어 수정하여 사용해본 경험이 있는지 - 최근에 읽었던 개발서적? 2021 Google IO ? - MVC와 비교하여 MVVM의 이점 - 장시간 백그라운드에 있다가 온그라운드로 오면 액티비티가 재시작 되면서 데이터들이 날라가는데 어떻게 처리? - MVVM RecyclerView에서 버튼 클릭 처리 흐름 알려주세요 - Paing 처리 - 성격 장단점 - 스트레스 해소 어떻게 해요 - 일 진행하면서 젠틀한 편인지 - - Kotlin - latinit / lazy 차이점 - 힙이 무엇인가..

    [Android] Layout 표현식

    Layout 표현식 이란? DataBinding 의 연장선으로 사전에 DataBinding 개념을 이해한 후 학습이 필요합니다. 표현식 언어를 사용하면 View에 의해 전달된 이벤트를 처리가 가능합니다. 적용 방법 Layout 표현식 참고자료 https://developer.android.com/topic/libraries/data-binding/expressions?hl=ko 레이아웃 및 결합 표현식 | Android 개발자 | Android Developers 레이아웃 및 결합 표현식 표현식 언어를 사용하면 뷰에 의해 전달된 이벤트를 처리하는 표현식을 작성할 수 있습니다. 데이터 결합 라이브러리는 레이아웃의 뷰를 데이터 객체와 결합하는 데 developer.android.com Binding Adap..

    [Android] Jetpack DataBinding 이란?

    오늘은 Jetpack의 DataBinding에 대해 알아보겠습니다. 1. DataBinding 이란? Data 와 View(Xml)를 Binding(연결) 해서 코드를 쉽게 작성할 수 있도록 지원해주는 기능을 제공합니다. 2. DataBinding / ViewBinding 비교 공통점 View를 직접 참조하는 데 사용할 수 있는 결합 클래스를 생성하며 관리합니다. 차이점 컴파일 속도 : ViewBinding > DataBinding Apk 용량 : ViewBinding < DataBinding ViewBinding은 단지 View 를 참조하여 사용해서 Controller 에서만 사용 가능합니다. DataBinding은 레이아웃 표현식을 지원해서 Xml 파일에서 직접 동적 UI 컨텐츠 선언이 가능합니다. ..

    [Android] Jetpack의 LiveData란?

    LiveData 란? LifeCycle 을 알고있는 DataType 으로서 Observer 패턴을 따릅니다. 데이터의 변경이 일어났을때 콜백 으로 받아 처리 가능하며 단일 효과보다 Databinding, ViewModel, Room 과 접목하여 사용하면 코드라인 감소 및 고급기능을 구현 한 Architecture 생성이 가능합니다. LiveData 상세 설명 https://developer.android.com/topic/libraries/architecture/livedata?hl=ko LiveData 개요 | Android 개발자 | Android Developers LiveData를 사용하여 수명 주기를 인식하는 방식으로 데이터를 처리합니다. developer.android.com LiveData의..

    안드로이드11 패키지 가시성제한 대응

    올해 초 새로 출시한 안드로이드 앱에 결제 모듈을 연동한 결제기능이 있다. 그런데 메일이 한통 왔는데 1. 배경 1) 안드로이드 11의 보안 정책 변경 (11월 1일 부) 2) 안드로이드 11 이전 버전 OS에서는 App이 PackageManager에서 제공하는 메소드 (queryIntentActivities(), getInstalledApplications(), getInstalledApplications(), resolveActivity() 등) 사용하여 시스템에 설치된 App을 확인할 수 있었음 3) 안드로이드 11 (API 30) 버전부터 패키지 가시성 제한으로 조회할 수 없게 되어, 결제창 등에서 사용하는 외부 App (앱카드, 백신, 삼성페이, 페이코 등) 호출 시 패키지 정보로 App 설치 ..