저는 Honeycomb 용으로 설계된 프로젝트에서 작업하고 있습니다. 2.3.3과 호환되도록 만들고 싶습니다. 필자는 원래 프로젝트의 사본을 라이브러리 프로젝트로 변환하여이 라이브러리를 여러 개의 새 프로젝트에 포함시키고 새 프로젝트의 일부 요소를 특정 API를 사용하도록 서브 클래 싱함으로써이 작업을 수행합니다.버전 별 Android API 및 메소드
그러나 우리는 많은 AsyncTask<...>
하위 클래스가 있습니다. AsyncTask<...>
은 2.3.3에 있지만 우리가 구현하는 onCancelled()
방법은 Honeycomb 이후에만 존재합니다. 나는 중앙 도서관 프로젝트에이 클래스들을 남겨두면 (실제로) 2.3.3 안드로이드 라이브러리에 대해 빌드 되었기 때문에 onCancelled()
메소드가 적중되지 않을 것이라는 우려가있다. 그러나 좋은 이유없이 모든 하위 프로젝트에서 이러한 클래스를 재현하고 싶지는 않으며 서브 클래 싱을 통해 어떤 점이 개선 될지 알 수 없습니다. 수퍼 클래스는 2.330 버전의 AsyncTask<...>
에 대한 것입니다. 내 질문은 : 자바/안드로이드는 이것을 허용합니까? 그리고 더 높은 버전의 안드로이드에서 onCancelled()
이 맞습니까?
허니컴의 onCancelled() 메소드에서 어떤 작업을 수행합니까? onCancelled() 대신 2.3.3에서 무엇을 할 계획입니까? – Murat
'AsyncTask'가 완료 될 때까지 기다렸다가 결과를 버립니다. 이 경우 우리는'BitmapRegionDecoder'에서'requestCancelDecode()'를 호출하는데, 이는 약간의 메모리와 프로세싱을 절약하고할만한 가치가 있습니다. –
ps'BitmapRegionDecoder'는 2.3.3 이전에는 분명히 존재하지 않지만 우리의 앱은 Kindle fire 장치에서 실행되기를 원할 수 있습니다. 따라서 2.3.3으로 다시 확장해야합니다. –