2011-12-01 10 views
6

私は最初のAndroidアプリを書こうとしています。これは、デバイスのローカルストレージに画像ファイルを読み書きするようスケジュール設定できる以外の特別な機能は使用しない、かなり基本的なアプリです。最も幅広い視聴者にアプローチすることが私の最優先事項です。 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をターゲットならば、あなたは内Androidマーケットに接続されたデバイスの97.7パーセントをカバーしますが最後の2週間。

1

Androidの多くの機能は、Googleが古いリリースにバックポートされますが、しばらくの間は回避されているシンプルなものを(使用している場合( fragmentsなど)

は、その後、私はあなたが行く最低を示唆しています複数の画面サイズがサポートされ始めたときに、これはv1.6-さ

9

考慮すべき多くの要因があります。

1.対象読者は

1.5は今日はあまり重要ではありません。本当に必要な場合を除き、ターゲットにすることはお勧めしません。今日、これらのデバイスでは、アプリの検出率は0.9%であると、current Market statisticsによると、

視聴者から見れば、1.5は無関係です。

1.6は今日では約1.4%ですが、もう少しですがそれでもトレースです。この議論だけでは、それは重要ではありません。

ターゲットオーディエンステクノロジという非常に重要な問題もあります。これらはニッチ市場です。たとえば、1.5にはiDENデバイスがいくつかあり、それらのユーザーを扱うときはカップケーキサポートが非常に重要になります。

米国のデバイスが2.1でアップデートされているため、別の場所にあると想定してはいけません。モトローラは、例えば、他の国のデバイスをサポートするという恐ろしい歴史を持っています。たとえば、#MOTOFAILの傾向を参照してください。

また、国別のターゲットも考慮する必要があります。そこにいる人々は、より少ない金額で、現在のEclair以前のデバイスと、小さなeclair/froyoデバイスを持つ可能性が高くなります。そのことを考慮に入れ、APIのニーズをバランスさせる必要があります。しかし、私はこれが今日、関連性があるとは思わなかった。これは、まだ1.5台のデバイスが氾濫している貧しい国々にとっては大変重要ですが、それでも変化しています(個人的な経験)。

最後に、純粋な収益性要因があります。個人的な経験から、1.5と1.6のユーザーは、有料でアプリをサポートする可能性は非常に低くなります。私はフリーメイムモデルのアプリを持っています。無料アプリでは、有料アプリよりも4倍(比例して明らかに)のユーザーが増えています。

2. APIの機能と開発

のしやすさIは、そのレイアウト癖の1.5をターゲットにすることはお勧めしません。十分に作業していれば、レイアウトと描画可能な空きが不完全であることがわかります。最初のfoursquareアプリ(私が今日Google Codeで見てきた例)には、これらの問題を説明している行がたくさんあります。私の謙虚な意見では、それは価値がありません。

良いことは、約1.6あなたが1.6に戻って移植された多くの非常に重要なライブラリ、主にフラグメントおよびローダー、にアクセスし、そのはるかに簡単にあなたの人生になりますということです。これらのレガシーデバイスすべてをサポートしながら、多くの負担を負うことはありません。

これは、今日、人々が最低限のAPIとして1.6を設定している主な理由です。

ニーズが混在する場合は、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では利用できません。

これはちょっとした問題の1つです。彼らは散在しているので、それらをすべて実現することは困難です。

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開発の最も簡単な部分の1つです。

関連する問題