이슈 발생 내용
- 합병관련 개인정보 이관 알림 업데이트 이후 앱이 종료되는 현상
- 개발할때는 아무 문제없었음
- identifier가 각각 dev,qa,production의 파일들을 모두 dev, qa , production 로 모두 빌드 해보았으나 아무런 문제가 발생하지 않음
- 실제 출시된 제품에서만 터지는 현상
- 앱이 강제종료 되는 계정은 따로 있었는데 예약정보가 있는 계정이면 ios,andorid 모두 강제종료되었음
[그 당시에 해결하면서 정리했던 노트]
원인
- 기기마다 폰트 크기 호환성을 맞추기위해 추가한 useWindowDimension 때문에 오류발생
근데 useWindowDimension의 fontScale은 결국 사용하지 않았는데 이것으로 인해 문제가 발생하였다.
import {… , useWindowDimension } from ‘react-native’;
...
{
const { fontScale } = useWindowDimension();
}
해결
- 미사용 코드인 fontScale을 삭제하니 문제 해결
왜 수정까지 오래 걸렸는가?
- 실제 제품이 아닌 개발중에서는 아무런 오류가 생기지 않았다.
- 실제 마켓제품의 Log도 출력해서 보았으나 제대로된 에러가 출력되지 않았다.
- 초반에 백엔드단에서 error code를 499를 내뱉어서 nginx오류로 오판
마무리
- 아쉬운점은 해결했음에도 불구하고 도대체가 원인을 알수가없이 끝맺어서 뒤가 구린느낌이다.
- 미사용 코드가 있다면 주석처리를 하던가 그때마다 정리를 하자…
미연에 방지했으면 애초에 발생하지 않았을 이슈
- RN에서 제공해주는 Modal과 useWindowDimension이 충돌한거 아닐까 추측만 하고있음
- 오류가 터지는 상황이 재현하기 어렵고 당장 라이브중인 서비스에 일이 터져서 테스트는 불가했음