APIレベルの設定

Androidアプリには、APIのバージョンを区別するAPIレベルというレベルがあります。

このレベルにより使えるクラスなどに違いがあり、現在(2017年)は1から25までのレベルがあります。

APIが変更される場合、古いAPIに新たなAPIを追加される場合がほとんどなので新しいAPIでは古いAPIのクラスが使用可能です。

では、APIレベルを変更したい場合にどうするかといとマニフェストを書き換えます。

マニフェストファイルはAndroidManifest.xmlという名前のXML形式のファイルです。そこに以下の要素があるはずです。

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="19" />

このタグではAPIレベルが8以下の環境ではアプリを実行できないような設定になっています。全ての環境でアプリを動かしたい場合はこの部分を以下のように書き換えます。

    <uses-sdk
        android:minSdkVersion="1"
        android:maxSdkVersion="19"
        android:targetSdkVersion="19" />

uses-sdkタグのminSdkVersion属性はそのAPIレベルでアプリを動かせる最低の数字、maxSdkVersionはアプリを動かせるAPIレベルの最大値、そしてtargetSdkVersionは確実に動くことが確認された環境のAPIレベルです。

もし、アプリを実行する環境のAPIレベルがマニフェストで設定したものと異なった場合はアプリを実行できないので注意してください。

どのAPIレベルがどの端末のバージョンに対応しているかは「AndroidのバージョンとAPIレベルの対応関係」というページに詳しく載っているので参考になります。