2016-07-29 10 views
1

私はAndroid開発の初心者です。Android SDKをダウンロードしてEclipseと統合するだけです。SDKバージョンを選択して最大人数に達する

ただし、私のアプリをダウンロードして使用するには、SDKマネージャでどのAndroidバージョンを選択すべきか分かりません。

私の画面に表示されているマネージャのスクリーンショットです。

SDK Manager window

ヘルプの任意の種類は本当にいただければ幸いです。おかげさまで

+0

は、Android 2.1を試してみて、それがユーザーの最大量をターゲットにどのように働くか、私たちに知らせて助けることができる願っています。すべての深刻さにおいて、それはあなたがあなたのアプリで使う予定の機能に完全に依存します。私は4からのターゲティングと言いたい。1以上のAndroidユーザーの約96%がカバーするので、安全な賭けです。プラットフォームの使用状況に関する統計情報[こちら](https://developer.android.com/about/dashboards/index.html#Platform)をご覧ください。 – hankide

+0

あなたが提供したリンクは非常に役に立ちそうです:) 「4.1から上向き」とは、4.1以上のすべてのバージョンまたは4.1以上のバージョンのいずれかを選択することを意味しますか? –

答えて

4

OLDデバイスでアプリを使用できるようにするために、実際にOLD SDKをダウンロードする必要はありません。

これは、ターゲットSDKバージョンと最小APIレベル(AndroidManifest.xmlまたはbuild.gradle)を使用してプロジェクト設定で行われます。

アプリへの聴衆を定義し、聴衆

ファーストを定義します。

HERE各Androidバージョンの市場シェアを確認できます(これは各国で変更できますが、参考になる場合があります)。

この表を確認すると、API 15以上を使用しているデバイスはごくわずかです。

enter image description here

あなたはAPI < 15をサポートするのであれば、あなただけ〜3%より多くの人に達するだろう。あなたが機能を失うことなくそれらをサポートすることができれば、良い(すべてのバージョンですべてのアンドロイド機能がサポートされているわけではありません)。しかし、あなたが作成した特別なフローティングアクションボタンのような機能を無効にして、それらのデバイスに到達する必要がある場合は、それは価値がないと思います。

だから、そのテーブルに基づいて、あなたが例えば私の場合は観客に

を定義し、私はAPI_16からAPI_24のAPIを持つデバイス用のアプリケーションを構築したいです。

通常、常に最大限のAPIを使用したいと考えています。今日、24.

この方法で、Androidを使用している人の97%に達することができました。

しかし、これは、私は観客

を定義した後。これはあなた次第です... 13 ...または14 ..または4として

を分APIを選択することができ...オプションですターゲットSDK

私は通常、サポートしたいMAX APIに従ってターゲットAPIを設定します。たとえば、サポートしたいMAX APIがAPI_24の場合、これがターゲットAPIになり、SDK v24(7.0)がダウンロードされます。

通常、最新のアンドロイド版にアクセスして新しい機能をすべて利用したいので、常に最新のSDKがインストールされます。

MINのAPI

さて、あなたはまた、あなたがサポートしたい分APIのバージョンを定義しています。例えば、API16を使用することができます(最初のJBバージョン)。

プロジェクトファイル(AndroidManifest.xml)にこれを設定します。 SDK 16をダウンロードする必要はありません。私が言ったようにEclipseの

を設定

、分SDKがプロジェクトに設定されます。これはあなたのAndroidマニフェストで行われます

ここで、targetSdkが24であることがわかります。つまり、このプロジェクトをビルドするにはSDK v24をダウンロードするだけです。それでも、このアプリはAPI 16以降のデバイスにインストールできます。

エクリプス(AndroidManifest.xmlに)

<manifest> 
    .... 
    <uses-sdk 
     android:minSdkVersion="16" 
     android:targetSdkVersion="24" /> 
    ... 
</manifest> 

アンドロイドスタジオ(build.gradle)

compileSdkVersion 24 
buildToolsVersion "24.0.0" 

minSdkVersion "16" 
targetSdkVersion "24" 

minSdkVersionが、あなたのアプリが動作することを保証するものではありません

アロイだけ上の設定API> = 16またはAPI < = 24のデバイスでアプリを実行する。ただし、アプリがクラッシュするか、その範囲内のすべての端末で機能しない可能性があります。これは、通常、APIのバージョンに応じていくつかのViewコンポーネントまたはメソッドが追加または削除されたために発生します。

たとえば、FragmentがAPI11にのみ追加されました。したがって、あなたがAPIv11を搭載した電話機にあなたのアプリをインストールしようとすると、それは機能します。ただし、API4を搭載したデバイスにインストールするとクラッシュします。

別の例は、私たちがサポートライブラリを使用する理由

サポートデザインライブラリのAPIのみ23に

を添加し、方法Fragment.onAttach(Context context)あり、それは機能を使用する開発者を可能にするGoogleが作成したライブラリです古いAndroidバージョンの新しいAndroidバージョンから。

ので、例えば、API < 11とデバイスと互換性のあるフラグメントを追加するには、インポートし、SDK(android.app.Fragment)に含まれたパッケージandroid.support.v4.app.Fragmentの代わりに、デフォルトのバージョンからFragmentクラスを使用する必要があります。

この方法では、あなたのアプリはクラッシュしません。

もちろんこれは非常に基本的な例です。 );それは...ただ説明するためにとにかく

で、私はあなた よろしく

+0

このような詳細な回答をありがとうございました! これらすべてのAndroidプラットフォームの使用に関する良いアイデアを持っています:) –

+0

うれしい私はあなたを助けることができました... :) – W0rmH0le

関連する問題