android - 잠금시 가로 Android 애플리케이션 다시 시작 방지

기사 출처 android orientation lockscreen

OpenGL을 사용하고 배경 음악이있는 게임 (일종)을 개발 중입니다. 응용 프로그램은 가로 모드에서만 실행됩니다.

내가 가진 문제는 사용자가 화면을 잠글 때 발생합니다. 그 시점에서 onStop()가 호출되면 화면 방향이 변경되고 방향 변경의 결과로 내 활동이 다시 시작됩니다. 이것은 OpenGL 표면이 다시 생성되고 음악이 다시 재생되기 시작하는 등 모든 종류의 다른 것들을 의미합니다. 잠금 화면은 CPU를 많이 사용하는 작업을 시작하는 것이 아니라 일시 중단해야하기 때문에 직관적이지 않습니다.

매니페스트에 android:configChanges="orientation"를 추가하면 아무 일도 일어나지 않았습니다. 나는 아마도 screenSizeandroid:configChanges가 누락되어 있음을 알고 있지만이 옵션을 사용할 수없는 이전 API 버전을 대상으로하고 있기 때문에 추가 할 수 없습니다.

그래서, 질문은 : 이것을 처리하는 적절한 방법은 무엇입니까? 모든 것이 예상대로 작동하도록 어떤 이벤트에서 애플리케이션을 초기화해야합니까?
매니페스트의 configChanges에 screenSize를 추가한다고해서 프로그램이 이전 버전에서 실행되지 않는다는 의미는 아닙니다. targetSdkVersion을 더 높은 버전으로 설정하고 minSdkVersion을 원하는대로 설정하면됩니다. intelljIDEA에서 Project Structure에서 ModuleSKD를 4로 설정하여 screenSize를 유효하지 않은 것으로 강조하지 않습니다. Eclipse에서도 비슷해야합니다.

<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="15" />

<activity android:name=".MyActivity"
      android:label="@string/app_name"
      android:configChanges="orientation|screenSize|keyboard|keyboardHidden|navigation">


또한 다음과 같은 코드에서 버전을 확인할 수 있습니다.

if (Build.VERSION.SDK_INT >= 11) 


이렇게하면 앱이 2.2 이상 버전에서 작동합니다.

게임이 가로 모드에서만 실행될 수 있기 때문에 onConfigurationChanged가 필요하지 않을 것이라고 생각하지만 관심이 있다면 내 질문과 내 질문과 내 답변이 매우 유사합니다.

replace layout on orientation change

이 질문에 대해 Stack Overflow에서 비슷한 토론을 찾았습니다: https://stackoverflow.com/questions/13836070/

관련 기사
android - HTC에서 자동 링크가 작동하지 않음-HtcLinkifyDispatcher
android - 스 와이프시 뷰 페이저 뷰를 업데이트하는 방법-Android
android - 보류중인 요청이있는 세션에 대해 새 권한을 요청하려고했습니다.
android - Android : Ant 명령 줄 빌드 중에 버전 정보를 전달하는 방법은 무엇입니까?
java - ksoap2 SOAP를 통해 복잡한 객체 배열 수신
android - AndEngine AnimatedSprite가 표시되지 않음
android - SimpleAdapter에서 textview를 숨기는 방법
android - ListView 행보기에 CheckBox를 추가하면 행을 클릭 할 수 없습니다.
php - PHP 서버에서 Android 인앱 결제 서명 확인
android - Android Emulator에서 Google Map V2를 표시하는 방법은 무엇입니까?