API レベル: 22
Android 5.1(LOLLIPOP_MR1)は、ユーザーとアプリ デベロッパー向けの新機能を提供する Lollipop リリースのアップデートです。このドキュメントでは、最も注目すべき新しい API について説明します。
新しいプラットフォーム機能の概要については、Android Lollipop のハイライトをご覧ください。
対象 API レベルを更新する
Android 5.1 用アプリのビルドを開始するには、SDK Manager を使用して Android 5.1 SDK プラットフォームとシステム イメージをダウンロードします。次に、"22"
の targetSdkVersion
を使用するようにアプリ開発プロジェクトを設定します。Android 5.1 システム イメージにアプリをインストールしてテストし、この変更を加えた更新したアプリを公開します。
古いバージョンをサポートしながら Android 5.1 API を使用するには、minSdkVersion
でサポートされていない API を実行する前に、システム API レベルを確認する条件をコードに追加します。下位互換性を維持する方法について詳しくは、さまざまなプラットフォーム バージョンのサポートをご覧ください。
API レベルの仕組みの詳細については、API レベルとはをご覧ください。
複数の SIM カードのサポート
Android 5.1 では、複数の携帯通信会社の SIM カードを同時に使用するためのサポートが追加されました。この機能を使用すると、2 つ以上の SIM カード スロットがあるデバイスで、追加の SIM を有効にして使用できます。
SubscriptionManager
クラスを使用して、現在アクティブな SIM に関する情報(デバイスが現在のネットワークでローミング中と見なされるかどうかなど)にアクセスできます。この情報は、データアクセス料金に敏感なデバイス ユーザーのために、アプリのデータアクセスをスロットリングまたはオフにしたいデベロッパーに役立ちます。アプリは、READ_PHONE_STATE
権限をリクエストし、SubscriptionManager
オブジェクトに SubscriptionManager.OnSubscriptionsChangedListener
を設定することで、デバイスの現在のネットワーク接続の変更をアラートできます。
非推奨の HTTP クラス
org.apache.http
クラスと android.net.http.AndroidHttpClient
クラスは Android 5.1 で非推奨になりました。これらのクラスはメンテナンス対象外であるため、これらの API を使用するアプリコードはできる限り早く URLConnection
クラスに移行する必要があります。
Carrier Services
Android 5.1 では、携帯通信サービス プロバイダが Android デバイスで携帯通信会社のプロビジョニング タスクを実行できるアプリを作成できるようにサポートされています。これらの API を使用すると、携帯通信会社が開発したアプリがこれらのタスクを実行し、Google Play を通じて配信できるようになります。これらの関数を使用するアプリは、デバイスのユニバーサル集積回路カード(UICC)の証明書と一致する証明書で署名する必要があります。
携帯通信会社サービス API が TelephonyManager
クラス、SmsManager
クラス、新しい CarrierMessagingService
クラスに追加されました。アプリは、hasCarrierPrivileges()
メソッドを呼び出して、これらの API へのアクセス権を確認できます。アクセス権なしでこれらの API を呼び出すアプリは、SecurityException
を受け取ります。