안드로이드(android)에 대한 공부를 하며 정리를 해놓기 위한 포스팅입니다.
앞으로 차근차근 포스팅해 나갑니다.
안드로이드(android)는 스마트폰에서 사용하는 OS(Operating System) 중 하나다.
이런 스마트폰 OS는 애플(Apple)사의 iOS와 Android가 대표적이다.
Android의 탄생
사실 안드로이드(Android)는 2003에 설립된 휴대용 단말기 소프트웨어를 개발하는 회사명이었다. 그 당시에는 디지털 카메라의 보급이 활발했던 시대였고, 원래 이 회사는 디지털 카메라의 OS를 개발하기 위한 회사였다. 그런데 휴대폰에 점점 카메라를 접목 시키기 시작하며 디지털 카메라의 보급이 주춤해 지자 이에 발 맞춰 스마트폰의 OS를 개발하는 회사가 된 것이다. 이 후 어찌된 영문인지 단 2년만에 Google 사는 이런 Android사를 매수 하였다. 구글이 안드로이드(android)사를 매수한 것은 지금 살펴보면 선견지명의 예라고 생각된다. Google에서 서비스하는 Gmail, YouTube, Google map등의 서비스와 함께 android 스마트폰은 무한한 확장과 가능성이 열려있기 때문이다.
Android의 버전과 호환 문제
안드로이드의 역사에 관한 글을 위키백과에 아주 자세히 나와있다.
1.0 알파 버전을 시작으로 1.5 버전부터 빵이나 케이크의 이름을 버전명으로 장난스럽게 사용하였다. 현재 2015년 5월 28일 6.0버전 안드로이드 마시멜로가 나왔다. 스마트폰의 기종에 따라서 이런 버전은 차이가 난다. 최신 기종은 최신 안드로이드 버전을 사용할 것이고 이로 인한 버전벌 호환성은 개발자가 집고 넘어가야 할 부분이다. 모든 버전에 모두 호환되도록 개발하면 좋겠지만, 최신 버전의 최신기술을 포기하지 않는다면, 하위 호환성은 물 건너 간다. 이를 최대한 해결하는 방법은 안드로이(Android) OS 버전별 보급률을 조사한 후, 앞으로 개발할 앱이 어느 버전 까지 지원할 지를 결정해야 한다. 또는 구글에서 Support Library를 사용하는 것도 방법이 된다. 현재 대략 4.0이상을 지원하면 대부분 만족한다고 판단된다.
이런 문제를 보면 iOS가 깔끔해 보인다.
개발툴
현재까지 대부분 개발자들은 안드로이드 개발을 Eclipse로 해왔다. 그런데 구글이 Android Studio를 본격 지원함에 따라서 Eclipse의 향후 plug-in(ADT)의 업데이트가 불분명한 상태이다. 아직은 Eclipse를 많이 사용하지만, Android Studio에 대한 관심도 가져야 할 것이다.
달빅(Dalvik VM)
안드로이드 OS에서 실행되는 프로그램(앱)은 Dalvik VM위에서 실행된다. 마치 자바의 java VM과 같은 개념인데 Dalvik VM과 Java VM은 개념만 비슷하지 전혀 다른 것이다.
개발 환경
2014/04/08 - [기타개발/Android개발] - 안드로이드 개발환경 구축(android, 이클립스(Eclipse),우분투)
2014/04/10 - [cocos2d-x] - cocos2d-x-3.0rc1에서 이클립스(Eclipse)이용 안드로이드(스마트폰)디바이스로 프로젝트 빌드와 실행하기
2014/04/14 - [컴퓨터 어플&팁] - JDK 설치 후 자바 환경변수 설정 방법
개발환경에 대한 포스팅은 이전에 했었지만, 오래 전이라 참고만 하고 다시 작성을 해야겠다.