6

市場にアプリをリリースしたい。たとえば bluetooth のような 2.0 リリースからの新しいものは何も使用せず、バージョン 1.6 から 2.1 を使用するすべてのエミュレーターでうまく動作します。

私の質問は、1.6、2.0、または 2.1 を実行しているすべてのデバイスと互換性を持たせるためにアプリケーションを配布する必要がある SDK のバージョンについてです。

私はそれをテストするために 1.6 を実行している物理デバイスしか持っていませんが、私が言うように、それは派手なものは何も使用せず、API レベル 4、5、6、または 7 を使用するエミュレーターでうまく動作します。

ありがとう

4

5 に答える 5

8

ここでの答えは良いですが、さらにいくつかの提案があります。

  • android:maxSdkVersion絶対に必要であることが確実でない限り、設定しないでください。
  • Cupcake デバイスで実行できるように設定android:minSdkVersionします。3
  • に設定android:targetSdkVersion4て、アプリが Donut でテストされたことを示します。

これで、アプリはすべての >= Cupcake デバイスで適切に動作するはずです。高密度画面 (Droid、Nexus One) に高密度リソースを提供する計画がある場合は、もう少し作業が必要です。これについては別のスレッドを開始することをお勧めしますが、簡単に言えば、高密度のリソースを drawable-hdpi-v4 というフォルダーに配置します。

uses-sdk docを確認してください。

于 2010-01-13T02:10:56.800 に答える
4

私は 1.5 でテストし、android:minSdkVersion="3" を置きますこれに基づいて、まだ多くのデバイスがあります 1.5 http://developer.android.com/resources/dashboard/platform-versions.html

于 2010-01-13T00:19:24.567 に答える
2

アプリが特別なことを何もしておらず、これらのバージョン間で非推奨/変更/追加されたものを使用せず、それぞれのエミュレーターで動作する場合は、問題ないはずです。

を使用して上限として2.1に制限するだけandroid:maxSdkVersion="7"です。次のSDKがリリースされたら、いつでも更新できます。

于 2010-01-13T00:08:07.390 に答える
1

以前のバージョンの SDK で記述されたものはすべて、最新バージョンと完全に互換性があると思います。

IDE をセットアップしていたときに、SDK ドキュメントでこれを読んだはずです。

私が正しければ、追加された機能を利用するためにアプリケーションを更新する必要は実際にはありませんが、拡張することにした場合、オプションは常にそこにあります。

于 2010-01-13T00:14:58.067 に答える
1

私の意見では、ベスト プラクティスは Android 1.6 SDK でコンパイルし、マニフェストで minSdkVersion を 3 に設定することです。

これは、このスレッドの Dianne Hackborn (受け入れられた回答にコメントした hackbod という名前のユーザー) の推奨に基づいて言っています。彼女は Android ソース自体に取り組んでいる Google の従業員です。

基本的に、かなりの数の Android 1.5 SDK デバイスが世の中に出回っているため、Android 1.5 SDK でコンパイルすると、1.5 SDK、1.6 SDK、2.0 SDK、または 2.1 SDK を備えたより多くのデバイスがサポートされますが、1.6 SDK を必要とするデバイスもあります。 HTC Tattoo のように、1.6 SDK でアプリをコンパイルしますが、minSdkVersion を 3 に設定すると、ほとんどのデバイスでアプリを使用できるようになります。

受け入れられた回答のとおりに実行し、最新の 2.1 SDK でコンパイルすると、大量のユーザーを逃しています。2.1 SDK でコンパイルされたアプリケーションは、2.1 SDK 以降を搭載したデバイスでのみ使用できるため、基本的に、現時点ではユーザーを Google Nexus One を所有しているユーザーに限定しています。

于 2010-02-22T14:07:31.643 に答える