Android

컨퍼런스

[컨퍼런스] Android Dev Summit 2019 EXTENDED SEOUL 참석후기

2019.12.21 컨퍼런스를 다니며 기억보단 기록을 하고자 합니다 안녕하세요 이번에는 구글의 연중행사인 Android Dev Summit 2019를 리캡 하는 형태로 진행되는 Android Dev Summit 2019 Extended Seoul에 참석하였습니다. 2019. 12. 21 (토) Android Dev Summit 2019 Extended Seoul 다른 행사 참여로 몇번 가본 적 있는 구글 스타트업 캠퍼스입니다.(입구와 기업부스는 사진을 찍지 못했습니다 ㅠ) 이날 부스는 뱅크샐러드와 핀다에서 운영하며 사은품을 나누어 주었습니다.(사은품은 제일 아래에!!) 저는 2번째 라인에 앉아서 발표를 들었습니다. 그럼 이제 어떠한 주제로 발표가 진행되었는지 하나씩 알아보겠습니다. (발표에서 나온 코드들..

개발/Rx

[RxJava2] just,fromArray subscribeOn(Scheduler)에 대해서

안녕하세요 이번에는 Rx를 사용하면서 Just operation의 scheduler에 대해서 알아 보겠습니다. 우선 Just는 위의 마블다이어그램처럼 데이터를 바로 방출할때 사용합니다. Create처럼 onNext()를 호출 할 필요없이 Just()로 데이터만 넘겨주면 됩니다. 여기서 주의해야 할 부분이 있습니다. Just operation은 subscribeOn을 통해 Scheduler를 지정이 안된다는 점입니다. 즉 Just operation은 Android main thread에서 동작한다고 볼 수 있습니다. 한가지 샘플 코드를 보겠습니다. { LogE("start : ${System.currentTimeMillis()}") Observable.just(sleepFunc()) .subscribeOn..

Android

[Android] Mac에서 Android SDK Path 설정 및 무선 ADB 연결

2019.11.17 Mac에서 터미널을 통해 adb 명령어를 실행하고 싶을 때가 종종 있습니다. Windows에서는 Android SDK가 설치된 경로를 환경변수로 등록해놓으면 되는데, Mac에서도 방법은 비슷합니다. 다만, Mac에서 Android SDK가 설치되어 있는 폴더 위치를 몰라서 Path 등록을 못하는 경우가 종종 있습니다. 그럼 이제 Mac에서 Sdk Path를 등록하여 터미널에서 adb를 명령어를 사용 할수 있도록 하고 Android Studio에서 무선으로 디버깅을 할 수있도록 adb를 이용해 설정해보겠습니다. ● Mac에서 Android SDK가 설치되는 폴더 사용자가 임의로 폴더 위치를 수정하지 않았다면, 기본적으로 Android SDK는 다음 위치에 설치됩니다. /Users/[사용..

Android

[Android] MediaController dispatchKeyEvent not called

2019.10.22 안녕하세요. VideoView를 사용하면서 MediaController가 Showing일때 backpressed가 안먹히는 현상에 대해서 공유하려고 합니다. 이 현상은 Target SDK 28로 올렸을때 발생할 수 있는 현상입니다. Target SDK 28의 변경사항으로 UI포커스 대한 부분이 있습니다. 1. 너비나 높이가0인 뷰는 포커스가 불가능 합니다. 2. 터치모드에서는 활동이 더 이상 초기 포커스를 암시적으로 할당하지 않습니다. 원하는 경우 명시적으로 요청해야합니다. MediaController가 Showing일때 Backpress이벤트가 감지 되었을때 ViewGroup의 focus가 항상 null로 나타나는 현상이였습니다. 이때 2번의 내용처럼 명시적으로 focus를 요청해야..

Android

[Android] Gradle Dependency Conflict문제 해결하기

2019.10.18 안녕하세요. 여러모듈을 사용하면서 Android Build를 하게되면 Dependency의 Duplication class에러가 엄청나게 뜨는 경험이 있으실 겁니다. 이에 대한 내용을 공유하려고 합니다. (각각의 모듈에서 버전관리가 제대로 안되어있는 경우 발생할 수있습니다.) Android Terminal에서 아래 명령어를 치면 사진과 같은 결과를 얻을 수 있습니다. ./gradlew app:dependencies ./gradlew app:dependencies --dependency modulename //모듈과함께 ./gradlew app:dependencies --configuration compile //의존성 구성값과함께 (*) 으로 표시되어 있는 부분이 중복으로 Depend..

컨퍼런스

[컨퍼런스] 제3회 99콘<이력서> 후기

2019.09.21 컨퍼런스를 다니며 기억보단 기록을 하고자 합니다. 안녕하세요 이번에는 제3회 99콘 행사에 다녀왔습니다. 2019.09.21 제3회 99콘 우선 이번 행사는 이력서를 주제로 우아한 형제들 작은 집에서 진행되었습니다. 이번 행사는 핸즈온 티켓과 일반 세미나 티켓으로 저는 일반 세미나 티켓을 구입하여 행사에 참석하였습니다. (너무 후회 중..) 핸즈온 티켓은 메인 세션과 라이트닝 세션을 포함하여 이력서 첨삭까지 진행되는 티켓이고, 일반 세미나 티켓은 메인 세션과 라이트닝 세션만 진행되는 티켓입니다. 사실 입사한 지 얼마 되지 않은 신입이지만 최근 개발자로서 성장에 대한 갈망 때문에 이직 고민을 하고 있었고, 이력서를 작성 중에 해당 행사를 접하여 참석하게 되었습니다. 핸즈온 티켓은 이력서..

Android

[Android] ViewHolder패턴을 활용한 Base ListView 만들기

2019.09.20 개발하면서 경험했던 것을 정리한 포스트입니다. 오류 지적이나 제안 언제든지 환영합니다. 안녕하세요. 이번 포스팅에서는 ListView 혹은 RecyclerView에서 Adapter를 매번 만들어 써야 하는 귀찮고 수고스러운 부분을 Base를 두어 공통으로 처리하는 방법을 알아보겠습니다. (먼저 ListView를 알아보고 다음 이어진 포스팅에서 RecyclerView에 대해 알아보도록 하겠습니다.) 우선 기존 ListView를 작성하는 방법에 대해 알아보고 다음 ViewHolder패턴을 활용한 Base처리 방법으로 넘어가겠습니다. ListView Adapter 기존 ListView는 List가 여러 개일 때 아래와 같이 Adapter를 Custom ListViewAdapter1, Cus..

Android

[Android] 빌드에러 : Execution failed for task ':app:packageDebug'.

2019.09.06 안드로이드 스튜디오 빌드중에 Execution failed for task ':app:packageDebug'. 에러를 종종 볼수 있습니다. 해당 에러는 Clean Build and Rebuild or Invalidate Caches 를 통해 간혹 해결되기도 하지만 몇번 빌드하다 보면 다시 나타는 녀석입니다. 이 에러는 여러가지 라이브러리를 가져다 쓰는중에 라이센스파일 충돌 혹은 라이브러리 중복 로드로 인해 발생합니다. 오류를 해결하기위해 Build.Gradle(:app)의 android 스크립트내부에 아래코드를 추가하여 빌드하면 오류를 해결 할 수 있습니다. packagingOptions { exclude 'META-INF/DEPENDENCIES.txt' exclude 'META-I..

컨퍼런스

[컨퍼런스] 안드로이드 탐구영역

2019.09.01 컨퍼런스를 다니며 기억보단 기록을하고자 합니다. 안녕하세요 이번에는 안드로이드 탐구영역에 다녀왔습니다. 2019.08.31 안드로이드 탐구영역 우선 이번행사는 안드로이드 테스트관련 주제로 배달의 민족을 만든 우아한형제들 작은집에서 진행된 컨퍼런스입니다. 위 사진에서 보시는바와 같이 수능의 시험지를 연상케하는 컨셉으로 컨퍼런스가 진행되었는데요. 컨퍼런스장에 입장하면서 받은 컴퓨터용사인펜!! 이때부터 심상치않은 분위기.. 세션순서또한 교시로 표현였고, 컨퍼런스장소도 시험장소를 떠올리게하는 분위기였습니다. (과탐 시험치던 옛날생각....🤣) 그럼 어떤 내용으로 발표가 진행되었는지 하나씩 알아 보겠습니다. 0교시 - KeyNote (강경완 ) 1교시 - 아장아장 안린이의 안드로이드 테스트 첫..

컨퍼런스

[컨퍼런스] Kotlin/Everywhere Seoul 2019 후기

2019.08.26 컨퍼런스를 다니며 기억보단 기록을하고자 합니다. 안녕하세요 이번에는 Kotlin/Everywhere Seoul 2019에 다녀왔습니다. 2019.08.26(월) Kotlin/Everywhere Seoul 2019 우선 이번 행사는 전세계에서 펼쳐지는 Kotlin축제로 Kotlin을 주제로하는 글로벌캠페인 입니다. Kotlin/Everywhere에서는 Kotlin In Action의 저자중 한명인 JetBrains의 Developer Advocate이자 [Kotlin in Action]의 공동저자인 Svetlana Isakova(스베트라나 이사코바)가 방한하여 [What' new in Kotlin] 이라는 주제로 발표를 해주셨습니다.!!!(사인도 받았어요.!!👍🏻 맨아래 첨부) 그리고 ..

Android

[Android] 키보드 올리기 / 숨기기 (android keyboard show / hide)

2019.08.26 개발하면서 경험했던 것을 정리한 포스트입니다. 오류 지적이나 제안 언제든지 환영합니다. 안드로이드를 개발하다보면 화면 전환으로 인해 자동으로 키보드가 올리고 / 숨기고 하도록 구현해야할때가 있습니다. 오늘은 이러한 방법을 알아보겠습니다. InputMethodManager 객체생성 InputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 키보드 보이기 public boolean showSoftInput(View view, int flags) { throw new RuntimeException("Stub!"); } InputMethodManager inp..

Android

[Android] Android Studio Live Template 알아두기#2

2019.08.13 개발하면서 경험했던 것을 정리한 포스트입니다. 오류 지적이나 제안 언제든지 환영합니다. 이전 글 [ Live Template 알아두기#1 ] 안녕하세요 지난 포스팅에 이어 Java, Kotlin코드에서 Live Template을 작성해 보도록 하겠습니다. 우선 지난포스팅에서는 아래와 같이 XML에서 간단하게 약어로 미리 설정해둔 값을 자동완성 하여 작성해보았습니다. 이제 Java or Kotlin코드로 작성을 해봅시다. Live Template에서 미리정의 된 값을 가져오거나 사용자가 수정할 수 있는 필드로 선언하여 사용 할 수 있습니다. Temaplate내 변수는 다음과 같이 선언됩니다. $variable_name$ 변수를 사용하여 작성한 템플릿을 볼까요? 이렇게 오늘날짜를 받아와 ..

hjiee
'Android' 태그의 글 목록
상단으로