2011-12-01 2 views
6

첫 Android 앱을 작성하려고합니다. 그것은 알림을 예약하고 장치의 로컬 저장소에 이미지 파일을 읽고 쓸 수있는 것 이상의 특별한 기능을 사용하지 않는 상당히 기본적인 앱입니다. 폭 넓은 잠재 고객에게 도달하는 것이 최우선 과제입니다. 안드로이드 1.5를 타깃으로한다면 앱이 ICS까지 잘 돌아가도록 보장받을 수 있습니까? 사용중인 일반 휴대 전화의 새로운 기준선 인 Android 2.1을 타겟팅해야합니까?타겟팅 할 Android 버전은 무엇입니까?

앱이 상당히 기본이므로 ICS를 타겟팅하면 2.1 버전으로 돌아가는 버전에서 실행됩니까? 어쩌면 이것은 어리석은 질문 일 것입니다.

+0

가난한 질문을 닫을 때 추가 점수가 있습니까? 이것은 플랫폼의 기술적 능력에 대한 매우 구체적인 질문이며 의견이 아닙니다. 간단히 말해서 - 안드로이드 2.1을 타깃으로한다면 더 최신 버전에서 작동 할 것입니다. 왜 그것이 토론을 유도 할 가능성이 있습니까? 아래 답변을 볼 수 없다는 증거. 나는 대부분의 새로운 안드로이드 개발자가이 질문의 버전에 답할 필요가있을 것이라고 생각한다 - 그것은 장치의 수에 관한 것이 아니며 x 또는 y 플랫폼을 대상으로해야하지만 2에 대해 빌드 된 경우 3,4,5에서 작동 할 것이다. – Chanoch

답변

6

이 시점에서 적어도 1.6을 타겟팅하는 것이 좋습니다. 그 전에는 여러 화면 크기에 대한 지원이 없었습니다. 화면 크기와 밀도가 다른 수백 가지 이상의 장치가 있기 때문에 1.6에서 추가 된 일부 기능을 활용하지 않으면 앱이 모두 잘 보이지 않게됩니다.

당신은 OS 버전은 여기에 가장 활성화되어있는 차트 찾을 수 있습니다

: 현재 차트를 기반으로 http://developer.android.com/resources/dashboard/platform-versions.html

, 당신은 목표 경우 2.1 당신이 내 안드로이드 시장에 연결 한 장치의 97.7 %를 다룰를 지난 2 주.

1

안드로이드의 기능의 많은 Google에서 이전 버전으로 백 포트되어 당신은 단지 잠시 동안 주변되었습니다 간단한 일을 (사용하는 경우 ( fragments 등)

, 그럼 당신이 가서 가장 낮은 제안 여러 화면 크기가 지원되고 시작했을 때 이것이 v1.6-됩니다

9

고려해야 할 여러 가지 요소가 있습니다.

1. 대상 고객이

1.5는별로 중요하지 않으며, 정말로 필요하지 않으면 사람들을 타겟팅하는 것을 권장하지 않습니다. current Market statistics에 따르면 이러한 기기의 앱 검색 가능성은 현재 0.9 %입니다.

잠재 고객 입장에서 1.5는 부적합합니다.

1.6은 현재 1.4 % 정도입니다. 이는 조금 더 많지만 여전히 흔적입니다. 이 주장만으로는 중요하지 않습니다.

또한 타겟 독자 기술인 매우 중요한 문제가 있습니다. 이들은 틈새 시장입니다. 예를 들어 1.5에 iDEN 장치가 있고 그 사용자를 다룰 때 컵 케잌 지원이 매우 중요합니다.

미국의 장치가 2.1로 업데이트되어 다른 위치에 있다고 가정하면 안됩니다. 예를 들어 모토로라는 다른 나라에서 장치를 지원하는 끔찍한 역사를 가지고 있습니다. 예를 들어 #MOTOFAIL 추세를 참조하십시오.

국가 타겟도 고려해야합니다. 거기에있는 사람들은 돈이 적 으면서 오늘날의 Eclair 이전 장치와 작은 eclair/froyo 장치를 가질 가능성이 더 큽니다. 이를 고려하여 API 요구 사항을 조정해야합니다. 그러나 나는 이것이 아직 적절하지 않다는 것을 발견했다. 이것은 여전히 ​​1.5 개의 장치로 넘쳐나고있는 가난한 국가들에게 많은 영향을 미치지 만, 심지어 변화하고 있습니다 (개인적인 경험).

마지막으로 순수한 수익성 요소가 있습니다. 개인적인 경험으로 볼 때 1.5와 1.6 사용자는 지불하고 앱을 지원할 가능성이 훨씬 적습니다. freemium 모델에 대한 앱이 있습니다. 유료 앱보다 무료 앱에 4 배 (비례하여 분명히) 더 많은 사용자가 있습니다.

2. API 기능 개발

의 용이성 나는 때문에 레이아웃 단점의 1.5을 대상으로하지 않는 것이 좋습니다. 충분히 작업 한 경우 레이아웃 및 드로어 블 가능 여부가 불완전하다는 것을 알 수 있습니다. 첫 번째 foursquare 앱 (Google Code에서 오늘 본 한 예)에는 이러한 문제를 설명하는 많은 행이 있습니다. 나의 겸허 한 의견에서는, 그것의 값이있는 것이 아니다.

좋은 점은 약 1.6은 1.6로 다시 향했다 많은 매우 중요한 도서관, 주로 조각과 로더에 접근하고 훨씬 쉽게 당신의 인생을 만들 것입니다. 모든 레거시 장치를 계속 지원하면서 많은 것을 잃지는 않습니다.

오늘날 사람들이 1.6을 최소 API로 설정하는 주된 이유입니다.

필요가있을 때마다 이어야하며 multiple API strategies이어야합니다.

이제 사소한 문제가 있습니다. 프로젝트가 너무 큰 경우 froyo/2.2/api-8에 도입 된 app2sd 기능을 사용하지 않고 장치를 타겟팅 할 가치가 있는지 궁금해 할 수 있습니다. 그러나, 나는 그것이 사실이 아니라고 느낍니다. 그리고 지금 기억할 수없는 사소한 문제가 있습니다.

그러나 1.6은 성배가 아닙니다. 1.6을 타겟팅하면 작은 불편을 겪게됩니다. 아주 작은 예를 들자면, 나는 생각하지 않는다. 말하자면, onKeyLongPress() is available on pre-2.0 devices. Service.onStartCommand과 많은 서비스 플래그 (api 5 이상)의 경우와 동일합니다.

예를 들어, START_FLAG_REDELIVERY 또는 START_STICKY에 의존하고 싶습니다. 따라서 1.6에서 Loader를 사용할 수있는 반면 1.6 결함을 보완하는 다른 기능이 필요합니다. 대부분의 이러한 기능은 1.6 AFAIK에서 사용할 수 없습니다.

작은 문제 중 하나 일뿐입니다. 그들은 흩어져서 모든 것을 깨닫기 어렵게 만듭니다.

더 나은 API는 출시 기간을 단축하고 생산성을 향상시킵니다.

3. 개발 전략 개인적으로

, 나는 (내가 실제로 지금 그것을하고 있어요) 다음 할 거라고 : 낮은 수준 장치 (1.6)에 대한 개발을, 당신은 필요성을 느낄 때마다 거기에없는 것을 구현하고 목표를 더 높은 API로 변경하여 "느낌"을 얻으십시오. 이는 구현해야 할 것을 이미 알고있을 때 도움이됩니다.

구현할 항목 (코드별로)을 모르는 경우 코드 완성 기능을 탐색 할 수 있도록 가장 높은 API (일반적으로 2.3)를 타겟팅하십시오. 나는 이것이 "시행 착오"와 같은 것처럼 들리지만, 이것을 배우는보다 실용적인 방법이 있는지 나는 모른다.

4. 분열

난이, f를 단어 의견을 생성이, 적어도 내 의견으로는, 분할에 대해 많이하지만, API 학습에 대한 더 많은 아니라는 것을 고려합니다 알고 있기 때문에 당신의 목표와 시장을 아는 것. 단편화는이 토론에 이어 두 번째로 열띤 논쟁을 피하는 것이 좋습니다.

기술적으로 API Difference 사이트의 차이점을 확인할 수 있습니다.

네, 꽤 좋은 개요라고 생각합니다.

부록 : 나는 모든 다른 동등하고 일반 앱되고, 일반적으로 오늘 (편집)

을 할 거라고 무엇, 내가 API 7/에클 레어에서 min으로 것입니다. 아직 시장에 나와있는 기기 중 97 %에 머물면서 풍부한 응용 프로그램 기능과 손쉬운 개발 기능을 제공하는 동시에 수익성을 확보하면서 제품 출시 시간을 줄이고 생산성을 높입니다.

+0

그래서, 만약 내가 오늘 최소한의 API 만 지원한다면, API 7/Eclair에 대해서는 평범한 앱과 평범한 앱에 대해서 물어 본다. – davidcesarino

+3

매우 멋진 글입니다. 나는 당신의 대답에 나의 체크 표시를 옮길 수 있다면. – FoamyGuy

3

FYI 버전 2.2 및 2.3은 현재 Android 기기의 90 % 이상을 차지합니다.

Android 1.5를 타겟팅하는 경우 앱이 ICS까지 계속 잘 돌아갑니다.

내가 사용중인 일반 전화에 대한 새로운 기준이 될 것으로 보인다 이는 안드로이드 2.1를 대상으로해야 하는가?

나는 괜찮다고 생각한다.

앱이 상당히 기본이므로 ICS를 타겟팅하면 2.1 버전으로 돌아갈 수 있습니까?

괜찮습니다.

제 생각에는 걱정하지 마시고 현재 및 미래의 기기 중 90 %를 어떤 식 으로든 커버 할 수 있도록 2.2로 첫 번째 앱을 개발하십시오. 나는 당신이 타겟 버전에 어떤 문제도 없을 것이라고 생각하지 않는다. 그것은 Android 개발의 가장 쉬운 부분 중 하나입니다.

관련 문제