내 응용 프로그램이 ICS에서 hw 가속화되기를 원하지만 2.3.3도 지원되어야합니다. ICS에 대해서만 HW 가속을 활성화 할 수 있습니까? 또는 2.3.3 지원 만 삭제할 수 있습니까?ICS에서 Hardware Acceleration을 활성화하는 방법은 Gingerbread에서 비활성화 하시겠습니까?
답변
3.0까지 하드웨어 가속이 추가되지 않았습니다. 이것은 문제가되지 않습니다.
심판 : ICS에 http://developer.android.com/guide/topics/graphics/hardware-accel.html
는 (4 + 안드로이드), GPU 가속 기능은 기본적으로 활성화되어 있으며 매니페스트에서 비활성화 할 수 있습니다.
진저 브레드까지 (최대 android 2.3.x까지), 사용할 수 없으므로 사용할 수 없습니다.
honeycomb (android 3.x)의 경우 기본적으로 사용 중지되어 있지만 매니페스트에서 사용 설정 될 수 있습니다.
여기에 다른 것이 있습니다.
내 게임 중 하나에서 하드웨어 가속을 사용할 수 있었지만 ICS에서는 문제가 없었지만 시장에 업로드했을 때 게임이 거의 재생되지 않는다는 많은 보고서가있었습니다.
나는 그 사용자 중 한 명과 연락을하고 hw acceleration이 꺼진 다른 버전을 제공했습니다. 그는 그것이 더 잘 작동한다고 주장했고 그는 진저 브레드를 사용하고있었습니다.
공식 문서에 따르면 하드웨어 가속을 사용하면 진저 브레드에 아무런 영향을 미치지 않습니다. 그러나 나의 경험은 그것이 가지고있는 것이다.
또한 공식 문서에서는 사용자가 선언하지 않고 대상이 ICS 인 경우 기본적으로 활성화되어 있다고 주장합니다. 그러나 명시 적으로 켜면 애니메이션을 스 와이프하고 스크롤하는 방법이 분명히 개선되었습니다.
따라서 공식 설명서가 올바르지 않으며 일부 버전에서는 하드웨어 가속을 수동으로 사용/사용하지 않도록 설정하는 이유가 있습니다.
매니페스트에서 hw 가속을 비활성화하고 다음 코드를 사용합니다.
if (android.os.Build.VERSION.SDK_INT>=11) {
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
}
이렇게하면 내 문제가 해결되는지 알려 드리겠습니다.
편집 : 정상적으로 작동하고 사용자로부터 불만을 제기하는 것을 중단했습니다.
2.3.3에 HWA가 없다는 것을 알고 있습니다. 문제는 ICS에서 HWA를 활성화하는 방법에 관한 것입니다. – arts777
응용 프로그램 요소에서 android : hardwareAccelerated = "true"를 사용하십시오 (문서화 된대로). – HandlerExploit
위의 속성을 포함하면 Android <3.0에 문제가 발생합니까? 즉, 인식 할 수없는 속성에 대해 예외가 발생합니까? – Kerry