작성
·
218
답변 1
1
안녕하세요!
제가 코드를 검토해보았는데요, 코드에 문제가 있었던 것 같습니다.
설정 앱에서 '뒤로 가기'를 누르면 resultCode가 0 (RESULT_CANCELLED)가 나오는 것이 맞습니다.
아래와 같이 if(result.resultCode == Activity.RESULT_OK){} 구문을 지워, result가 들어오면 바로 다시 권한을 확인하도록 하면 됩니다.
private fun showDialogForLocationServiceSetting() {
getGPSPermissionLauncher = registerForActivityResult(
ActivityResultContracts.StartActivityForResult()
){ result ->
Log.d("LOG : :: : : : : ",result.resultCode.toString())
// RESULT 코드 확인하는 부분을 삭제해주세요.
if(isLocationServicesAvailable()){
isRunTimePermissionsGranted()
}else{
Toast.makeText(this@MainActivity, "위치 서비스를 사용할 수 없습니다.", Toast.LENGTH_LONG).show()
finish()
}
}
}
아주 세세하게 공부해주셔서, 제가 실수한 부분까지 잘 찾아주신 것 같습니다.
code.with.joyce@gmail.com 로 위치 서비스 활성화 오류 찾아낸 분이라고 연락주시면, 감사의 마음을 전달하도록 하겠습니다! :)
또 공부하시다가 궁금하신 부분있으시면 질문 남겨주세요~ :)