Android(60)
-
[WIP] diffUtil은 리스트 주소가 같아야 작동 2022.01.10
-
권한(전화) 허용과 세부 권한(READ_PHONE_STATE, READ_PHONE_NUMBERS) 허용은 별개
[이슈] 전화 권한을 허용한 상태인데 권한이 없을 경우 requestPermission()하는 로직이 수행됨 [원인] sdk 30에서 권한이 세부적으로 나뉘면서 Manifest.permissions.REQUEST_READ_PHONE_STATE, Manifest.permissions.REQUEST_READ_PHONE_NUMBERS로 구성되는데 로직 수행 전 허용받은 권한은 두개 중 하나였기 때문에 멀티 퍼미션 요청했을 때 로직이 수행된 것임 [해결] 로직이 수행되는 것이 맞음
2022.01.10 -
권한 요청 자동 거부
[이슈] requestPermission()을 했는데 아무런 반응이 없음 [원인] sdk 30 부터 권한 요청 시 뜨는 권한 대화창에서 '거절 및 다시 묻지 않기' 선택이 사라지고 해당 대화창이 2번 거절된 경우 sdk에서 자동으로 거절로 진행함 [해결] onRequestPermission() 콜백에서 권한 여부에 따라 유저가 인식할 수 있도록 경고창을 뜨게한다던지 조치가 필요함
2022.01.10 -
Fragment startActivityForResult() requestCode
[이슈] fragment에서 startActivityForResult()를 할 경우 Activity의 onActivityResult()에서 requestCode가 쓰레기 값이 나옴 [원인] onActivityResult()의 호출 순서는 Activity -> Fragment 순이고, fragment에서 startActivityForResult()를 할 경우 sdk 내에서 최종 목적지인 Fragment를 식별할 수 있는 안전한 requestCode를 위해 16비트 연산이 수행되어 requestCode로 지정됨. 즉 기존에 지정한 requestCode는 Fragment의 onActivityResult()에서만 얻을 수 있다. [해결] Activity에서 처리되기를 바란다면 fragment에서 getActiv..
2022.01.10 -
[WIP]RecyclerView Item Layout MATCH_PARENT 적용안됨
[이슈] RecyclerView에 설정한 Item의 xml에서 최상위 Layout을 LinearLayout으로 지정할 경우 android:width="MATCH_PARENT" 속성이 제대로 작동하지 않음 [원인] 모르겠음 [해결] RelativeLayout으로 지정시 android:width="MATCH_PARENT" 속성 적용됨
2022.01.10 -
Intent StartActivity() 호출 직후 onActivityResult() 호출 이슈
[이슈] startActivityForResult() 호출 직후 onActivityResult()가 호출됨 [원인] Intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) 지정 후 startActivity()를 호출해서 onActivityResult()가 바로 실행된 것이었음 [해결] Intent에 해당 Flag 지정하지 않고 실행 [참고] Task란? App에서 실행되는 Activity를 보관하고, 관리하는 스택 Flag란? Task내 액티비티 제어 방식 Flag 사용법 AndroidManifest에서 원하는 Activity의 launchMode 속성을 사용해 적용(4가지 모드만 지원, 특수 경우 제외하고, 일반적으로 standard/singleTop만 사용) standar..
2022.01.08