5
Android 앱에서 '사용자 비활성'을 감지하고 싶습니다. 좀 더 정확하게 말하자면 : 사용자가 특정 시간 동안 내 앱 (화면 터치, 스크롤, 텍스트 입력 ...)과 어떤 상호 작용도하지 않았는지 감지하고 싶습니다. 기술적으로 나는 각 (사용자) 상호 작용에서 재설정되는 타이머를 사용합니다. Android : 사용자 감지/키보드 입력 감지 (소프트 키보드)
내 활동에, 나는 사용자가 소프트 키보드와 상호 작용할 때@Override
public void onUserInteraction(){
resetInactiveTimer();
}
은 불행하게도, onUserInteraction가 호출되지 ... 화면을 스크롤 접촉 등의 상호 작용을 검출하는
onUserInteraction 메소드를 오버라이드 (override). 그 이유는 소프트 키보드가 내 활동의 일부가 아니라는 것입니다. 내 응용 프로그램에서 편집 텍스트에 대한
나는
TextWatcher를 사용하고
잘 작동 방법을 onTextChanged. 하지만 내 애플 리케이션은 또한 임의의 웹 페이지를로드 WebView가 포함되어 있습니다. 물론 일부 웹 페이지에는 입력 필드가있을 수 있으며 사용자가 소프트 키보드와 상호 작용하여 해당 텍스트 필드를 편집하는 방법을 알지 못합니다.
입력 방법은 키 이벤트를 보낼 필요가 없습니다. 실제로 jelly beans softkeyboard는 백 스페이스를 누를 때 어떤 키 이벤트도 보내지 않습니다. –
하지만 여기서 문제는 edittext를 입력 할 때 onUserInteraction이 호출되지 않는다는 것입니다. 또한 onKeyDown 또는 onKey를 사용하려면 각각의 모든 edittext에 키 누름 수신기를 설정해야합니다. 소프트 키보드에서 키 누르기 이벤트를 추적 할 수있는 일반적인 옵션이 있습니까? – Smeet