iOS 2년 이상, 안드로이드 1년 이상 사용 중입니다.
보통 안드로이드 장점으로는 자유를 꼽습니다만, 저는 그게 과연 맞는 말인지 좀 의심이 드네요. 개발자에게만 많은 권한이 있고 사용자는 (루팅하고 설정 파일 수정, 서드 파티 프로그램을 찾아 적용 등의 일반인에게는 어려운 방법을 쓰지 않으면) 권한이 없는 경우가 있습니다. 예를 들겠습니다.
1)iOS의 경우에는 시작 시 자동 실행이라는 개념 자체가 없습니다. 백그라운드로 돌 수 있는 프로세스도 한정되어 있고, 그것도 자동으로 실행될 수 없습니다. 그래서 시스템이 느려지는 것을 걱정하지 않고 프로그램을 마음껏 설치했습니다. 그런데 안드로이드의 경우에는 Windows처럼 개발자가 할 수 있는 게 많습니다. 시스템 시작 시 자동 실행도 가능합니다. 그런데 이 동작을 사용자가 제어할 수가 없는 것 같네요. 자동으로 뜨는 걸 막으려면 루팅을 한 후, 애플리케이션을 찾아서 해야 하는데, 제가 여러 애플리케이션을 받아서 테스트해 봤지만 제대로 동작하지 않거나, 한 번에 하나씩만 자동 시작 목록에서 제거할 수 있는 (제거할 때마다 확인해야 해서 귀찮음) 프로그램밖에 없네요.
얼마 전에 무슨 자동차 게임을 설치했더니만 부팅할 때마다 새 자동차가 있다고 알림이 뜨더군요. Clear 눌러 없앴는데도 부팅할 때마다 계속 나오길래 결국 위의 프로그램 받아 자동 실행 목록에서 없앴습니다. 문제는 이런 사용자가 당연히 제어 권한을 가져야 할 기능에 대해 권한이 없느냐는 겁니다.
2)iOS의 경우에는 알림이나, GPS 위치 사용도 프로그램 설치 후 따로 제어할 수 있습니다. 그런데 안드로이드의 경우에는 그게 없습니다. 예전 무슨 뉴스 프로그램은 실행하면 무조건 GPS를 켜서 짜증이 났습니다. 같은 프로그램이 iOS에도 있었는데, iOS에서는 위치 정보 사용을 허락하지 않으면 간단히 해결되었습니다.
3)iOS에는 widget이 없긴하지만, 안드로이드의 경우에는 애플리케이션이 widget을 등록하는 걸 막을 수가 없습니다. 어떤 달력 프로그램은 무슨 쓸모도 없는 widget을 수 십 개나 등록하는데, 그걸 그 프로그램 설정에서 지우려면 하나씩 지워야 하더군요. 프로그램 자체는 좋으나 그 쓸모 없는 widget들 삭제가 귀찮아 새 기기에 설치할 때마다 고민합니다.
4)SD 카드에 중구난방으로 파일들을 막 만들어 놓고 프로그램이 삭제될 때 정리하지 않고 없어지는 것 때문에 SD 카드 관리도 힘듭니다. 프로그램이 SD 카드에 쓰는 것도 허락하지 않거나 애플리케이션 단위로 고정된 위치에 쓰고 애플리케이션이 지워질 때 SD 카드에서 관련 데이터도 지워지도록 되어야 하지 않을까요.
제가 보기에는 안드로이드 애플리케이션의 사용 패러다임은 All Or Nothing 같네요. 즉, "개발자가 원하는 조건대로 쓰든가 아예 쓰지 말든가 둘 중 골라라." 이건 좀 아닌 것 같습니다. 사람마다 원하는 게 다른데요. 개방성은 좋지만, 사용자에게 더 많은 권한이 없으면 많은 사람들이 고생합니다. 물론 "루팅하고 설정 수정하면 되는데 뭐가 문제냐" 이렇게 말씀하시는 분 계시겠지만, 대부분의 사람들은 그런 것을 하기 귀찮아 하며 잘 모르는 사람도 많습니다. 컴퓨터에 대한 지식이 없는 사용자도 원하는 대로 쉽게 설정할 수 있도록 안드로이드를 개선해야 하지 않을까요?
---
구글에 건의하고 싶었지만 어디에다가 해야 할지 몰라서.
A programmer, sort of.
정말 동감가는 글입니다.
정말 어이 없는 앱들이 많이있습니다. 저는 특히 부팅체크하는 프로세서를 넣은 앱들이 그렇더군요.
가끔 쓰는 앱들이 부팅할때마다 부팅되었는지 체크한다는 자체가 매우 불쾌하기는 합니다.
애플은 앱과 데이타가 각자의 샌드박스에 통채로 들어 있기 때문에 일반적인 공용 데이타 공간이 없습니다.
그렇기 때문에 비슷한 동작을 하는 앱A와 B를 설치하고 C라는 파일을 이용하려면 A와 B에 각각 C라는 파일을 넣어줘야 하는 경우가 많습니다. Open with가 생겨서 애플이 보안상 문제가 없다라고 생각되는 파일들은 이멜에서 불러 올수는 있지만요..
안드로이드는 앱 보호를 위해 시스템, 데이타 파티션과 사용자 저장 공간을 명확히 나누어 놓다보니 시스템과 앱+데이타를 저장하는 내장스토리지가 존재하고 용량도 정해져 있습니다. 그래서 별도의 외장스토리에 앱의일부데이타를 저장하는 형태입니다. 그렇다보니 SD카드가 너저분스 해지는 결과가 초례하죠..
iOS고 안드로이드고 다 플랫폼에서 개발자들을 보호하기 위한 조치이다 보니..
우리가 원한다고해서 해결될 수 있는 문제는 아닌거 같습니다....
4번은 동감하는 부분이 많습니다.
하지만 1~3번은 동감하기 힘드네요. 모두 "어떤 앱을 설치하니..."라고 표현하신 것처럼 그것들은 앱의 문제 입니다.
자동실행의 온오프나 알림 옵션등은 제대로 된 앱이라면 대부분 앱에서 설정 가능합니다. (저는 2년동안 수백개의 앱을 사용해 봤지만, 어느정도 인지도나 추천이 있는 앱중에 그런 옵션이 빠져 있는 앱은 본 적이 없습니다.)
3번도 마찬가지 인데, 위젯 옵션을 집어넣어 위젯을 컨트롤하는 방식을 사용치않고 위젯 유형만큼 등록 해 버리는 앱이 있었습니다.
저는 그런 앱은 "미숙한" 앱으로 보고 사용하지 않아버립니다. (일단 개발 완성도가 떨어진다고 봅니다)
따라서, "사용자에게 자유도가 적다"고 말쓴하신 안드로이드에 대한 일반화는 일부 앱에서의 설정기능이 적은 것만을 근거로 안드로이드에 전체로 침소봉대하신 듯 보입니다.
오히려 자유도가 높기 때문에 지적하신 "자동 실행"이나 "위젯", "SD카드 사용" 등이 앱에서 가능한 것이죠. 모든 도구나 기기가 그렇듯 자유도가 높으면 그만큼 신경써줘야 할 부분이 많고, 이렇게 자신에 맞는 기기를 세팅해 가지는 것을 좋아하시는 분도 많죠. 기업에서는 더말할 나위 없고요.
글쓴 분이 iOS와 비교하셔서 굳이 비교한다면, 자유도가 떨어지더라도 그냥 알아서 다 해주는 기기를 원하신다면 아이폰이 더 나으실 것 같습니다. 안드로이드에서는 앱의 수준과 내용에 제한이나 검열하지 않고 그 판단 기준 역시 사용자의 몫으로 남겨두고 있는 생태계이니까요.
(4번도 동감은하지만 엄밀히 말하면 안드로이드 개발가이드를 앱들이 지키지 않고 제멋대로 폴더를 생성한 탓이라 할 수 있겠네요.)
말씀하신 예는 대다수 앱들의 문제로군요.
OS 자체에 자유도가 있고 없고와는 별 관계가 없어보입니다.
그리고 일단 지적하신 사항은 대체로 다른 사람들도 불편하게 생각할 수 있는 부분이긴 하지만, 반대로 생각해서 말씀하신 부분을 사용하는 것이 필요할 경우, 당연히 그게 안 되는 iOS 에서 불편을 느끼는 사람도 충분히 있을 수 있습니다.
오히려 말씀하신 문제들의 원인은 애플이 하나하나 관리하는 앱스토어와, 일단 등록 후 사후관리를 하는 마켓의 차이라 보는 게 더 맞지 않을까 싶습니다.
작성 하신 부분들 잘 읽었습니다.
제가 볼때는 작성한 모든 부분들의 단점을 적어주셨는데,그걸로 생기는 장점도 있겠지요.
개발자에게 권한이 있다기 보다는
안드로이드 자체가 그렇다고 보는게 더 나을것 같습니다.
정말 다른건 몰라도.. 프로그램 삭제하면 SD 카드에 저장되었던 부수적인 파일들도 삭제되도록 하는것은 정말 필요한듯..