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

2022/06 4

Duplicate Class Found in Android

앱 실행 도중 갑자기 위 에러가 발생하였다. 말 그대로 앱내 선언된 Class Name이 중복된다는 것인데... ( 난 그런적 없는데..? ) 확인 해보니 iresultreceiver 라는 클래스가 겹치는 것을 확인했다. Logcat 을 보면 이러한 경우 어떻게 트러블 슈팅 하면 좋을지 가이드 사이트를 제공한다. https://developer.android.com/studio/build/dependencies#resolution_errors 빌드 종속 항목 추가 | Android 개발자 | Android Developers Android 스튜디오에서 Gradle 빌드 시스템을 이용하여 빌드 종속성을 추가하는 방법에 관해 알아보세요. developer.android.com 우선 확인해 보니 실제로 두개의..

Develop/Android 2022.06.24

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
반응형