하루에 0.01%라도 성장하자
반응형

Develop 130

onTaskRemoved를 사용하는 방법

안드로이드 앱을 종료하면 onDestroy 가 발생하는것은 라이프 사이클을 공부한 사람이라면 알고있는 사실이다. 실질적으로 onDestroy는 앱종료, 액티비티 종료시 실행해야 하는 코드가 있으면 여기에 넣어주는 경우가 많다. 이번에 업무를 진행할 때도 앱 종료시 SharePreference에 값 저장을 해야하는 상황이 발생해서 onDestroy에 값을 넣어 줄까 하다가! onDestroy는 앱종료 외에 액티비티 종료에서도 발생하니까 이것만으로는 완벽한 코드가 되지 않았다. 그래서 Application에 Lifecycle을 이용한여 코드를 넣어보았는데... 이벤트가 발생되지 않는다.. @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) fun appDestroyed() { ..

Develop/Android 2022.06.22

Android - 앱 재실행 하기

특정 상황이 발생하면 앱을 종료하는 것 뿐만 아니라 종료 후 실행까지 해야 하는 경우가 있다. 이때 사용하는 코드를 공유하려고 한다. try { startActivity( Intent.makeRestartActivityTask( packageManager.getLaunchIntentForPackage( packageName )?.component ) ) exitProcess(0) } catch (e: Exception) { e.printStackTrace() } finish() 대신 exitProcess를 사용한 이유는, 앱이 실행했을 당시 activity가 여러개가 실행되고 있을 수도 있기 때문인데, 자세한 내용에 대해서는 아래 블로그가 잘 정리되어 있으니 이부분을 한번 읽어보면 좋을 것 같다. htt..

Develop/Android 2022.06.16

Timber와 Android Logger 개발 경험 공유 ( 긴 로그 기록, 로그 파일 저장 )

Android에서 많이 유명한 로그 라이브러리다. https://github.com/JakeWharton/timber GitHub - JakeWharton/timber: A logger with a small, extensible API which provides utility on top of Android's normal Log class. A logger with a small, extensible API which provides utility on top of Android's normal Log class. - GitHub - JakeWharton/timber: A logger with a small, extensible API which provides utility on... github...

Develop/Android 2022.06.13

단위테스트 스터디 시작

이번달 회사에서 지원해주는 교육비로 책을 구입했다. '단위테스트' 우리팀은 아직 단위테스트를 도입하지 않았다. Unit Test없이 서비스를 이어가고 있다는게 신기할 따름이고... 현재는 할 수 없는 분위기지만 언젠가 할 수 있는 분위기가 되면 도입을 할 예정이고, 그러기 위해서 미리 준비해두면 좋을 것 같아서 책을 구매 후 스터디를 해보기로 한다. 테스트에대한 실무 경험이 많이 떨어져있기 때문에 어떻게 보면 지겨운 이론 공부가 될 수도 있고, 아니면 아예 모르는 신세계를 경험 할 수도 있겠지만, 일주일에 1단원씩 찬찬히 정리해보려고 한다. ( 이제 다시 공부좀 해야지 .. 바쁜거 어느정도 정리되어 가니까 .. )

Develop 2022.05.02

Git - Branch 관리

서사 코드 관리에 있어서 제일 중요한건 형상관리 인거 같다.. 우리 회사는 지금 git을 사용하고 있고 Naver Cloud Platform 에서 제공하는 SourceCommit 을 이용하여 remote 관리를 하고 있다. 내가 처음 이 회사에 왔을 때 git을 사용할 수 있는 사람들이 많이 없었고, git이라는 걸 처음 듣는 사람들도 있었다.. ( 처음에 체계를 잘 잡았어야 했는데.. 연차가 너무 낮아서 ㅠ ) 우리의 현재 git branch 구조는 - master : 운영 배포 용 - dev : 개발용 - 그외 : 사이드 개발 + 버그 픽스 운영 되고 있다. 그렇다 보니 그외

Develop/Git 2022.02.07

SQL - 여러개의 로우 중 랜덤하게 로우를 가져오는 방법

최근에 본의아니게 SQL을 가지고 열심히 씨름중인데.. 이번에 랜덤하게 row를 가져와서 사용할 일이 생겼다.. 5만개 조금 넘어가는 row 였는데, 다른 블로그에서 가이드 준 대로 진행하보니 뭔가 문제가 있어 보였다. SELECT * FROM TEST ORDER BY RAND() LIMIT 10 먼저 TEST 라는 테이블에서 랜덤한 로우를 10개 가져오는 것인데, 위 쿼리로 하게되면 엄청나게 시간이 오래 걸린다.. 물론 위에는 내가 TEST로 썼지만, 실제 업무용 테이블은 텍스트가 많아서 그런지 더 그랬고.. 실제로 15초 이상이 걸렸다. 해당 문제는 단순하게 * 이 아니라 특정 컬럼을 하나 지정하면 바로 수정되긴 하더라.. 아마 텍스트가 엄청 나게 많았던 컬럼 때문에 그런거 같은 느낌.. SELECT..

Develop/Database 2022.01.12

Vue - Component 간의 Method 호출 방법

우선 Vue는 Component 를 많이 사용한다. 아주 기본적일 수 있지만 우선 Component 간의 통신에 대해서 간단하게 설명한다. 먼저 처음에 개념을 잘못 잡고 갈 수 있는 부분이 있어서 간단하게 설명한다. [ 예시 ] 화면에 UI가 저렇게 구현되어 있다고 하자. 저기서 헤더는 Component로 구현했다면 코드는 이렇게 구성된다. // page.vue 페이지 import TheHeader "@/component/Header.vue" export default{ component : { "the-header" : TheHeader, }, method:{ callPageMethod(){ console.log("저는 페이지 메소드 입니다.") } } } // TheHeader.vue 헤더 expor..

Develop/Vue.js 2021.12.01

Vue - select 태그에서 default Value 셋팅하기.

기본적으로 select 는 이렇게 쓴다. 보기를 선택하세요 프라우드먼 YGX Hook 라치카 코카N버터 웨이비 원트 이렇게 하면 보기를 선택하세요가 보여지고 하단에 셀렉트 박스가 보여지는데, vue에서는 v-model을 사용한다. 따라서 v-model을 사용하게 되면 이런 코드가 된다. 보기를 선택하세요 프라우드먼 YGX Hook 라치카 코카N버터 웨이비 원트 이렇게 v-model을 주는데, 그렇다면 우리는 어떻게 default value를 설정할 수 있는가? v-model을 사용하면 checked와 selected 속성을 무시한다! 따라서 우리는 초기데이터를 셋팅해 주어서 default value를 셋팅해야 한다. 보기를 선택하세요 프라우드먼 YGX Hook 라치카 코카N버터 웨이비 원트 {{ SWF...

Develop/Vue.js 2021.11.23

Android - Compose Codelab

이번에 GDG 에서 안드로이드 Compose DevFest2021 행사를 시작했다. 우연히 카카오톡 광고를 통해 알게되었고 바로 신청 ㄱ ( 카카오톡 광고의 재발견이랄까 .. ) 알고보니 이번에 JetPack Compose 1.0 버전 출시로 코드랩 행사를 하는 것이었다. 11월 1일 ~ 30일 동안 9개의 코드랩을 수행하고 그중 7개를 정상적으로 클리어 하면 수료되는 과정 ( 당연 무료. 구글 만세 ) 이 회사에 와서 안드로이드만 하는 것이 아니기 때문에 안드로이드 정책이나 다양한 툴의 발전에 많은 관심을 두지 못하였다 ( 사실 그전에도...ㅎ ) 하지만 이번에 이렇게 좋은 기회를 만나서 한번 해보려고 한다. 사실 아직 작성은 안했지만, 이글을 쓰는 이순간 Codelab Week1은 끝냈다.. 하하 b..

Develop/Android 2021.11.16

Android - 코로나 정책

최근에 코로나 정책 때문에 구글 플레이 스토어 배포에 아주 애를 먹었다. 구글 코로나 관련 정책 안내 우선 이 업데이트는 2021년 8월 17일에 최종 업데이트 되었다. 구글 콘솔 개발자 계정에 들어가면 새로운 앱 컨텐츠 항목이 생겼는데, 이렇게 생겼다. 즉 출시한 앱이 코로나19 관련 앱인지 확인하는 것. 현재 개발 중인 앱은 코로나 백신 접종자를 대상으로 항체검사를 진행해 항체가 있는지 여부를 확인해주는 기능과 메뉴를 제공하려고 했는데, 해당 메뉴에 '코로나19' 라는 문구가 들어가다 보니 리젝을 받았다 .. 그러면서 알게된 코로나 정책. 즉 코로나19 가지고 뭔가 기능을 제공하면 리젝이구, 코로나19 관련된 뉴스기사를 제공하거나 '코로나19'가 메인이 아닌 '코로나19 시대에 어울리는 취미' 같은 ..

Develop/Android 2021.11.09
반응형