기본 콘텐츠로 건너뛰기

4월, 2008의 게시물 표시

MSA2 EDR 스팩

MSA2 Early Draft Review 스팩이 출시되었다. 아직 초기 스팩인지라 최종 버전이 완료되기까지 기다려 보아야 하겠지만 기존 MSA 스팩과 비교하여 가장 큰 차이점은 MSA subset, fullset 보다 좀 더 세분화하여 MSA limited, subset, fullset의 3가지 형태의 디바이스를 정의하였다. 새로 추가된 MSA limited가 포함하고 있는 JSR들은 당연히 새로운 그룹을 정의하겠지만 또한, 기존의 subset, fullset 역시 기존 JSR은 물론 새로운 혹은 변경된 버전의 JSR들을 포함하고 있다. 저사양 휴대폰을 위한 MSA limited는 기존 JTWI 스팩 대비하여 다음과 같은 JSR들이 변경/추가되었다. - MIDP2.1, JSR205 WMA2, JSR75 FC and PIM, JSR82 BT, JSR238 Mobile I18N, JSR258 Sensor. 중간사양의 휴대폰을 위한 MSA2 subset은 기존 MSA1 subset 스팩 대비하여 다음과 같은 JSR들이 변경/추가되었다. - MIDP3.0, JSR238 Mobile I18N, JSR177 SATSA, JSR211 CHAPI, JSR293 Location 2.0, JSR234 AMMS, JSR258 Sensor, JSR272 Mobile Broadcast, JSR257 Contactless Communication, JSR258 UI Customization, JSR280 XML. 고사양의 휴대폰을 위한 MSA2 fullset은 기존 MSA1 fullset 스팩 대비하여 다음과 같은 JSR들이 변경/추가되었다. - MIDP3.0, JSR258 Sensor, JSR272 Mobile Broadcast, JSR257 Contactless Communication, JSR258 UI Customization, JSR280 XML, JSR281 IMS Services. 위에 열거한 몇몇 JSR들은 디바이스 구현 상태에 따라 선택적으로 구현되어질 수 있다.

안드로이드 Activity와 MIDP 2.0 비교

이 글에서는 안드로이드 어플리케이션의 Activity와 MIDP 2.0의 어플리케이션의 라이프사이클을 비교해보도록 하겠다. 우선, MIDP 2.0의 MIDlet의 라이프사이클 관리에 대해 살펴보자. MIDlet 프로그램을 작성 시 다음과 같은 3가지 method를 반드시 구현해야 한다. startApp pauseApp destroyApp startApp는 MIDlet이 최초 실행되거나 혹은 pause 상태에서 다시 resume될 때 호출되며 개발자는 이 때 필요한 코드를 적절히 수행하도록 구현하면 된다. pauseApp는 프로그램 외적인 요인 혹은 스스로 중단을 요청한 경우에 호출이되며 paused 상태가 되는 경우에 대한 코드를 구현해주면 된다. 마지막으로 destroyApp는 MIDlet이 죵료되기 전에 호출되며 종료 시 수행되어야 할 동작, 예를 들면 현재 상태의 저장등과 같은 코드를 구현하면 된다. 이와 같은 MIDlet의 라이프사이클 관리를 state transition diagram으로 보면 아래와 같다. 안드로이드의 Activity 역시 MIDlet과 유사하게 라이프사이클 관리를 위한 8개의 method를 제공한다. onCreate onStart onRestart onResume onFreeze onPause onStop onDestroy 위 method들이 라이프사이클 변화에 따라 어떤 순서로 호출되는지 아래 그림에서 살펴보도록 하자.