Android 50

안드로이드 BroadcastReceiver ANR

브로드 캐스트 리시버 에서는 10 초 이내에 모든 작업을 완료 해야함. 그렇지 않으면 시스템이 죽여 버리거나, ANR을 발생 시킨다. 1. onReceive 에서 최대한 간결하게 코드를 처리 한다.1.1 다른 서비스로 리턴 시킨다.1.2 또는 goAsync()를 사용 하여 타임아웃을 연장 한다. 아래는 구글의 설명이다. /** * This can be called by an application in {@link #onReceive} to allow * it to keep the broadcast active after returning from that function. * This does not change the expectation of being relatively * responsive to..

Error : BinderProxy@ is not valid; is your activity running?

android.view.WindowManager$BadTokenException: Unable to add window — token android.os.BinderProxy@ is not valid; is your activity running? 보통 프로그래스 다이얼로그 띄우려고 하는데 발생 한다. 구글에서는 이런 에러를 이렇게 정의 하고 있다. 이 비정상 종료는 대개 앱에서 이전에 완료된 활동을 컨텍스트로 사용하여 대화상자를 표시하려고 시도하여 발생합니다. 예를 들어 활동이 종료되면 대화상자를 표시하려고 시도하는 AsyncTask를 트리거하지만 사용자가 작업이 완료되기 전에 활동에서 뒤로 이동하면 발생할 수 있습니다. 띄우려는 곳이 액티비티가 아니라면if(!((Activity) context).is..

말하는 정각알림 남성, 여성 고음질 음성 사용하는 방법

말하는 정각알림의 음성을 남성 및 고음질로 변경하는 방법입니다. 아래와 같이 남여변경 및 말하는 언어도 변경이 가능하니 이용해보세요. 설정 따라 해보기 아래는 삼성 단말기 기준입니다. (단말기 및 제조사 마다 설정의 이름이 다를 수 있으며, 적용이 안되는 경우도 있습니다.) 1. 앱의 정각알림 탭에서 말하기 설정을 선택합니다. 리스트를 쭈욱 내리거나 우측의 메뉴를 눌러서 바로 이동 할 수 있습니다. 2. 삼성 및 LG등의 TTS엔진 우측의 톱니바퀴를 선택하세요. 3. 음성데이터 설치를 선택하세요. 4. 한국어 우측의 다운로드 버튼을 눌러 주세요. 5. 설치를 눌러서 진행합니다. 완료 되면 뒤로가기 버튼을 눌러주세요. 6. 이곳으로 돌아 오면 다시 뒤로 가기 버튼을 눌러 줍니다. 7. 두 번째 삼성 TTS..