오랫만에 포스팅이다

최근에 앱 업데이트를 진행하다가

안하던 짓을 했다.

기존에 manifest 파일에 minSdkVersion="8" 만 세팅해서 쓰다가 아래의 이클립스 warning 경고가 눈에 거슬려 

<uses-sdk> tag should specify a target API level (the highest verified version; when running on later versions, compatibility behaviors may be enabled) with android:targetSdkVersion="?"

뭐 별일 있겠냐 싶어서 targetSdkVersion="14"로 설정했다. 단순히 나는 target을 "이 앱은 해당 버전에 최적화 되었습니다." 라고 이해하고서는 말이다.

배포를 하고나니 플레이어 재생시 가로세로 전환마다 동영상 재생이 재시작 되는 버그가 나타났다.


오. 마. 이. 갓.;


소스에 문제로 우선 판단하고 디버깅했으나 별다는 이상 여부 없었다. 혹시나 하는 맘에 해당 targetSdkVersion을 빼보니 정상 동작;;; 뭐지 이거 단순한 알림 개념이 아니었나;

레퍼런스를 찾아봤다.

http://developer.android.com/guide/topics/manifest/uses-sdk-element.html 


android:targetSdkVersion
An integer designating the API Level that the application targets. If not set, the default value equals that given to minSdkVersion.


앱이 타킷으로 하는 API 레벨을 지정된 상수코드란다. 지정하지 않으면 minSdkVersion과 동일시 한단다. 그렇구나. 기존에는 API레벨이 8로 지정되어 쓰이다가 14로 바뀌면서 MediaPlayer 작동방식이 바뀐게 있나보다;

여튼 다시 해당 속성은 빼고 정상화 시키도록 했고, 미디어 재생 프로세스는 바뀐게 뭐가 있는지 또 찾아봐야겠다.


결론은...  targetSdkVersion 제대로 알고 확인하고 쓰자!!!

Posted by 빈솔B
,