1

SDKをインストールするときに、携帯電話の約97%がAndroid 2.1をサポートしていることを読みました。新しいプロジェクトを開くときに、Android 2.1にコンパイルすることを選択する必要がありますか?2.1用に作成されたアプリは新しいバージョンで動作しますか?反対は機能しますか?4.0.3に開発した場合、それは古いもので機能しますか?

ありがとう、エリック

4

2 に答える 2

5

私の質問は、新しいプロジェクトを開くときに、Android 2.1にコンパイルすることを選択する必要がありますか?

ビルドターゲットとして指定するもの(「コンパイル先を選択」)は、Androidのどのバージョンでアプリケーションを実行できるかに直接影響しません。

2.1用に作成されたアプリは新しいバージョンで動作しますか?

「for」という言葉の合理的な解釈については、そうです。

4.0.3に開発した場合、それは古いもので機能しますか?

Agarwalの答えと同様に、これは「to」の意味によって異なります。

たとえば、を使用するとしますCalendarContract。このクラスは、APIレベル14(別名、Android 4.0)で追加されました。Android 4.0以降のデバイスでのみ使用する限り、問題はありません。ただし、古いデバイスでCalendarContract使用しようとすると、そのクラスがファームウェアに存在しないため、クラッシュします。CalendarContract

したがって、新しいバージョンのAndroidを実行しているデバイスでのみ新しいAPIを使用するようにする限り、条件付きで新しいAPIを使用できます。通常、これは次のようなバージョンガードブロックを介して行われます。

if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.HONEYCOMB) {
  // do something that requires API Level 11+ here
}
于 2012-04-22T16:42:03.217 に答える
0

4.0.3に開発した場合、古いバージョンのデバイスにはインストールされません。2.1用に開発した場合、新しいバージョンで正常に動作します。ただし、使用する場合、4.0.3の機能を取得することはできません。

于 2012-04-22T16:37:38.370 に答える