Notice
Recent Posts
Recent Comments
Link
투케이2K
137. (TWOK/WORK) [업무 이슈] 안드로이드 android http 통신 api 호출 폴링 수행 시 액티비티가 종료 된 상태에서도 api 호출이 지속 되는 이슈 본문
투케이2K 업무정리
137. (TWOK/WORK) [업무 이슈] 안드로이드 android http 통신 api 호출 폴링 수행 시 액티비티가 종료 된 상태에서도 api 호출이 지속 되는 이슈
투케이2K 2025. 2. 13. 20:15[제 목]
[업무 이슈] 안드로이드 android http 통신 api 호출 폴링 수행 시 액티비티가 종료 된 상태에서도 api 호출이 지속 되는 이슈
[내 용]
------------------------------------------------------------------------------
[이슈 사항]
------------------------------------------------------------------------------
1. 안드로이드 http 통신 api 폴링 호출 시 액티비티 화면이 종료 되어도 new Thread 내에서 동작하고 있는 폴링이 종료 되지 않는 이슈 발생
------------------------------------------------------------------------------
------------------------------------------------------------------------------
[원인 파악 및 증상 재현]
------------------------------------------------------------------------------
1. 안드로이드 애플리케이션 실행 및 http 통신 api 폴링 호출 수행 화면 진입
2. http 통신 api 폴링 동작 수행 실시
3. 폴링이 동작 되고 있는 상태에서 >> 안드로이드 뒤로가기 버튼 클릭 및 액티비티 finish 종료 처리 수행
4. 액티비티 라이프 사이클 onDestroy 상태 확인
5. http 폴링 로직이 종료 되지 않고 지정 된 횟수 만큼 계속 동작 되고 있는 상태 확인
------------------------------------------------------------------------------
------------------------------------------------------------------------------
[조치 내용]
------------------------------------------------------------------------------
1. 안드로이드 http 폴링 호출 로직 구문에서 액티비티 isRunning 구동 상태 확인 후 종료 된 상태 인 경우 폴링 로직을 탈출 하도록 소스 코드 변경
2. 소스 코드 예시 :
for (int i=0; i<10; i++){
// [현재 폴링을 수행하고 있는 액티비티 화면이 구동 중 상태 확인]
if (activityIsRunning == false){ // [액티비티 화면이 종료 된 경우 : onDestroy]
break; // [폴링 구문 탈출]
}
// [HTTP 폴링 수행]
}
------------------------------------------------------------------------------
------------------------------------------------------------------------------
[참고 사이트]
------------------------------------------------------------------------------
[안드로이드 os 가 장착 된 특정 단말기 에서 정보 갱신을 위한 주기적 폴링 (polling) 체크 로직]
https://blog.naver.com/kkh0977/223638638254?trackingCode=blog_bloghome_searchlist
[유틸 파일] RequestSyncPatchBodyJsonHttp 안드로이드 동기 방식 http patch 요청 실시
https://blog.naver.com/kkh0977/223175440539?trackingCode=blog_bloghome_searchlist
[http 통신 요청 스레드 에러 - android.os.NetworkOnMainThreadException]
https://blog.naver.com/kkh0977/222696839681?trackingCode=blog_bloghome_searchlist
[라이브러리 : retrofit 레트로핏 (Java / http / Network)]
https://blog.naver.com/kkh0977/222915098499?trackingCode=blog_bloghome_searchlist
------------------------------------------------------------------------------
반응형
'투케이2K 업무정리' 카테고리의 다른 글
Comments