일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 백준
- bottom-up
- RecyclerView
- recyclerView 클릭이벤트
- Silver5
- Kotlin
- 프로그래머스
- dp
- gradle설정
- bronze2
- Alert Dialog
- toLong()
- 다크모드제한
- bronze3
- silver3
- stack
- 뷰클래스
- RETROFIT
- fragment에서 context사용
- Android
- silver4
- bronze4
- 테마변경
- 녹음기
- LIS
- Top-Down
- LV1
- naver open api
- map
- 임시저장하기
- Today
- Total
목록녹음기 (2)
유니 코드

권한 요청?! 공식문서를 살펴보면 녹음을 하기 위해서는 사용자에게 기기의 오디오 입력에 액세스할 것임을 알리는 메시지를 표시해해야한다고 명시되어있다. 이 때 사용하는 권한인 RECORD_AUDIO는 개인정보 보호에 위험을 초래할 수 있기 때문에 dangerous permission으로 간주하고 있다. 안드로이드 6.0이상에서는 위험한 권한을 사용하는 앱은 반드시 앱을 실행하는 도중에 사용자에게 승인을 요청하는 작업을 거쳐야한다. 음성 녹음을 위한 권한 요청 manifest에 아래와 같은 속성을 추가하여 오디오 기능을 사용하겠다고 명시한다. private val requiredPermissions = arrayOf(android.Manifest.permission.RECORD_AUDIO) 요청할 권한을 담..

주요기능 - 마이크를 통해 음성 녹음 - 녹음된 시간 및 재생시간 타임 스탬프 표시 - 녹음한 음성 재생 및 초기화 - 음성 시각화 기술 - Request runtime permissions - CustomView - MediaRecorder - MedioPlayer 상태에 따라 달라지는 버튼 enum class State { BEFORE_RECORDING, ON_RECORDING, AFTER_RECORDING, ON_PLAYING } 녹음 상태에 따라 다른 UI를 보여주어야하기 때문에 현재 녹음 상태를 나타내는 Enum class를 정의한다. 녹음 상태는 녹음전, 녹음중, 녹음후, 재생중 이렇게 4개이다. class RecordButton ( context: Context, attrs: Attribut..