개발일지/멀티메모

[멀티메모] 1일차

Emil :) 2019. 11. 26. 12:33
728x90
반응형

졸작으로 했었던 멀티메모장의 확장

 

최종 목표


  1. 음성녹음 버그 수정
  2. TODO 기능 추가하기 (푸시 알림 기능도 구현해보도록 하자)
  3. 메모 리스트 좌우로 슬라이드 하면 삭제 되도록 하기

참고


https://stackoverflow.com/questions/59042370/voice-recording-function-in-android-studio?noredirect=1#comment104327873_59042370

 

voice recording function in android studio

im trying to make voice recording function. but this bug is really hard. first, error line is this at org.androidtown.multimemo.VoiceRecordingActivity.onCreate(VoiceRecordingActivity.java:85) so...

stackoverflow.com

갓 스택오버플로 찬양해

진행 과정


일단 음성녹음이 왜 안되는지 확인해봤다.
이게 전부터 해결하려고 노력중인데 진짜 ㅠㅠ 너무어렵다

        init(savedInstanceState);

 일단 여기서 에러가 난다.
근데 컴파일 에러는 안나고.. 도대체 뭔가 해서 여러저러 검색도 해보고 질문도 올려봤다..(상단 링크참조)

어쨋든 결과는 해결!! 해결 과정을 알아보자

 

1. 에러파악


컴파일 에러는 없지만 실행 에러는 다음과 같았다.

E/ViewRootImpl: sendUserActionEvent() returned.
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.androidtown.http, PID: 1963
java.lang.RuntimeException: Unable to start activity ComponentInfo{org.androidtown.http/org.androidtown.multimemo.VoiceRecordingActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

이게 문제였다는걸 지금까지 몰라서 

at org.androidtown.multimemo.VoiceRecordingActivity.onCreate(VoiceRecordingActivity.java:85)

이것만 붙잡고.. 여길 가보니까

setContentView(R.layout.voice_recording_activity);

여기가 에러라고 한다.
근데 실행할때마다 에러 코드의 위치가 바뀌었었다. 다른 하나는 여기였음

init(savedInstanceState);

어찌됐건 나는 내가 직접 해결하려고 하다보니 정말 감도안잡히던 것이었다
그냥 물어볼걸..
물어보니까 1시간만에 끝나누...

암튼 문제는 Theme을 사용해서 화면을 표시해주고자 하는데, 여기서 에러가 났던것이다.
내가 원하는 Theme은 @style에 있는데 @android:style에서 찾으니 매칭 에러가 난것..

 

2. 해결하기


그래서 어케하느냐. 

Manifest.xml을 가주자

<activity
            android:name="org.androidtown.multimemo.VoiceRecordingActivity"
            android:theme="@android:style/Theme.DeviceDefault.Dialog"
            android:screenOrientation="portrait"
            >
        </activity>

이 친구를

<activity
            android:name="org.androidtown.multimemo.VoiceRecordingActivity"
            android:theme="@style/Theme.AppCompat.Dialog"
            android:screenOrientation="portrait"
            >
        </activity>

이렇게 바꿔주자. 그럼 해결된다!!

오늘의 결과


 

움짤 찍으려고 에뮬레이터로 돌려서 소리는 확인못하지만..

내 폰에 넣고 돌려보니 잘 작동했다

728x90
반응형

'개발일지 > 멀티메모' 카테고리의 다른 글

[멀티메모] 5일차  (0) 2019.12.18
[멀티메모] 4일차  (2) 2019.12.14
[멀티메모] 3일차  (0) 2019.12.02
[멀티메모] 2일차  (0) 2019.11.30