間もなくAndroidPlayストアに掲載するゲームを作ろうと思っていたのですが、今はどのSDKを使うべきか迷っていました。Jellybeanには4.1があることは知っていますが、2.2や2.3などの古いものを使用する必要がありますか?
9 に答える
Google Playマーケットのユーザーに広く普及しているデバイスに関する統計があります:Androidダッシュボード
この記事の執筆時点(2014年9月)では、次のようになっています。
統計を見て、私はJelly Bean(Android 4.1以降)に行きます。
少なくとも、現在約60%のシェアを持つAPIレベル10をターゲットにする必要があります:http: //developer.android.com/about/dashboards/index.html
サポートライブラリ(v4)を使用して、フラグメントなどの新しいクラスを取得できます。
したがって、2.1〜2.2に下げるようにみんなが言うようにダッシュボードを使用しますが、それが最小SDKであることを忘れないでください。ターゲットのSDK番号は16である必要があります(#io2012に記載されています)。これにより、新しいものに対してスタイルが適切にレンダリングされるようになります。
2.1や2.3のような低いバージョンは、より多くの顧客を獲得することを意味します。一方、ICSとJellyBeanは、改善された機能を提供します。
機能と潜在的なターゲットオーディエンスのバランスが取れるようにバージョンを選択してください。
たとえば、JBを利用した場合、まだJBを使用していないユーザーが多くなるため、潜在的なユーザーを失うことになります。
(私は個人的に2.3.3が好きです)
これはあなたの選択ですが、より多くのデバイスがサポートされるため、古いSDKを使用するときにより多くのオーディエンスがいる場合。2.2を使用することをお勧めします。これがGoogleのAndroidSDK使用状況の統計ですリンク
開発するゲームの種類によって異なります。これはあなたにヒントを与えるかもしれません。乾杯。
4.1を使用し、マニフェストファイルでuses-sdk android:minSdkVersion = "8" android:maxSdkVersion="16"を宣言できます。
2.2以前をターゲットにすると、おそらく市場の95%に触れることになります。Eclipseを使用する場合は、すべてのツールを更新してからAndroidプロジェクトを作成する必要があります。Googleはいくつかの満足度を示していますが、見るのに最適な場所はここです:http://developer.android.com/about/dashboards/index 。 html
<uses-sdk android:targetSdkVersion="16" android:minSdkVersion="8" />
minSdkVersion これは主に、ほとんどのAPIセットを使用するコードベースです。
targetSdkVersion これは、テストできる最高のSDKです。アプリを使用しているデバイスは、targetSdkが十分に高い場合に、より快適に見えるようになります。
マルチバージョニング minSdkVersionよりも高いレベルの機能を使用する場合。Build.Version.Xを使用して呼び出しをブロックできます。
File path;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {
path = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsolutePath() + File.separator + directory);
} else {
path = new File(getBestCacheDir(applicationContext, true) + File.separator + "Pictures" + File.separator + directory);
}
minSDKよりも高レベルのAPI機能を誤って使用しないように注意してください。これにより、実行時のクラッシュが発生します。