2016-09-22 4 views
2

비디오 스트림에 대한 활동이 있습니다. 이 작업에는 전화 저장 장치에 현재 프레임이있는 jpg를 저장하는 스냅 샷 단추가 있습니다. 런타임 권한 요청이 활동을 일시 중지합니다.

나는 그렇게 할 수있는 WRITE_EXTERNAL_STORAGE 권한이 필요합니다, 그래서 SDK (23)

문제가에서 런타임 권한 요청, 권한이 일시 정지 된 활동을 요청 때마다 구현했습니다. 대화 상자가 나타나면 괜찮습니다. 이제 대화 상자가 전면 포커스이므로 "다시 묻지 않음"확인란을 선택하면 사용자가이 "스냅 샷"버튼을 누를 때마다 작업이 일시 중지되고 다시 재개되었습니다.

정상적인 활동으로는 문제가되지 않지만 내 비디오 스트리밍 활동의 경우 onPause()에서 스트림을 중지 한 다음 onResume()에서 다시 시작해야하므로 비디오가 다시로드되어 눈에 띄게 일시 중지됩니다.

이 문제를 방지 할 방법이 있습니까? 이것은 심지어 예상되는 행동입니까?

답변

-3

권한은 한 번만 물어야합니다.

권한을 요청하기 전에 다음 코드를 추가하십시오. 이를 통해

int permissionCheck = ContextCompat.checkSelfPermission(thisActivity, 
    Manifest.permission.WRITE_EXTERNAL_STORAGE); 

if(permissionCheck) { 
// Permission has already been granted. 
} else { 
//Request for permission again. 
} 

이동 : https://developer.android.com/training/permissions/requesting.html#perm-check

+0

나는 바로 그 같은 코드가 있습니다. 하지만 처음 거부하면 사용자에게 다시 물어볼 수 있습니다. 그런 다음 사용자는 다시 묻지 않도록 선택할 수 있습니다. 이것은 문제가있는 유스 케이스입니다. –

관련 문제