Fry in the Web

次からこうしようと思ったことを書き残しておきます

Android SDK の Versionについて

8/28日現在最新のSDKバージョンは23となっています。
Android M 6.xのSDKツールですね。
現在のGradleはこんな感じです

 compileSdkVersion 23
    buildToolsVersion "23.0.0"
    defaultConfig {
        applicationId "ebifry.net.wright"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

普段何気なく書いているこのコードですが、詳しく説明してある本は少ないです

CompileSdkVersion

Android Developers

By default, this is set to the latest version of Android available in your SDK.

有効な最新のAndroid SDKバージョンを指定すべきです。
もちろん従来の古いSDKでもビルドは可能ですが、
最低でも4.1以上を指定するとそれ以降のデバイスにおいては
より新しい機能、より最適化されたアプリに仕上げることが出来ます。

BuildToolsVersion

これも同様に最新のものを指定すべきです
BuildToolもバージョンごとに性能が上がっており、後方互換性も良好です
極稀にバージョンが変わってビルドできなくなることがありますが(こないだ2時間位ハマった…AndroidSDKのバグだったらしい)
そのような問題が発生することがあるのは外部ライブラリを導入してる時のみですので安心してください

MinSdkVersion

これを書きたくてこの記事を書いているようなものです
Dashboards | Android Developers
現在Android 2.xのシェアは5%を切っています
これらはほぼ使われてない端末または保守的な企業の端末、
あるいは開発者のテスト用ではないですかね?
そう考えるとこれから2.xをサポートする意味は全くありません
煩雑で入り組んだ処理分けをするぐらいなら
MinSDKは15以上を指定することをおすすめします

TargetSdkVersion

ここは少し注意をしてください
アプリがサポートする最大のAPIレベルを指定します、
最新の機能が使えるようになりますが
Android公式では

indicates the highest version of Android with which you have tested your application.
As new versions of Android become available,
you should test your app on the new version and update this value to match the latest API level and thereby take advantage of new platform features.

とあるように最新の環境でテストした上で数字を上げろと書いてあります
これで困ったことは一度もないですが、一度不具合が起きると即低評価付けられるこの世の中、
しっかり確認をしておきましょうね…

以上、自分用メモでした