Android 1.6 プラットフォーム

API レベル: 4

Android 1.6 は、2009 年 10 月から Android ハンドセットにデプロイ可能なマイナー プラットフォーム リリースです。プラットフォームには、ユーザーとデベロッパー向けの新機能と、Android フレームワーク API の変更が含まれています。

デベロッパー向けには、Android SDK のダウンロード可能なコンポーネントとして Android 1.6 プラットフォームの新しいリリースが提供されます。プラットフォーム(Android 1.6 r2)には、完全に準拠した Android ライブラリとシステム イメージ、エミュレータ スキン、サンプルアプリ、開発用のマイナー アップデートのセットが含まれています。ダウンロード可能なプラットフォームは完全に準拠(API レベル 4)しており、外部ライブラリは含まれていません。

Android 1.6 プラットフォームを対象とした開発やテストを開始するには、Android SDK と AVD Manager ツールを使用して、最新の Android 1.6 プラットフォームを Android 1.6 以降の SDK にダウンロードします。

プラットフォームの特長

新しいユーザー機能とプラットフォームの特長のリストについては、Android 1.6 プラットフォームの概要のドキュメントをご覧ください。

API レベル

Android 1.6 プラットフォームでは、フレームワーク API の更新版が提供されています。Android 1.6 API には整数識別子(4)が割り当てられます。この識別子はシステム自体に格納されます。「API レベル」と呼ばれるこの識別子により、システムはアプリをインストールする前に、アプリがシステムと互換性を持つかどうかを正しく判断できます。

Android 1.6 で導入された API をアプリで使用するには、アプリのマニフェストで <uses-sdk> 要素の android:minSdkVersion 属性に適切な値「4」を設定する必要があります。

API レベルの使用方法について詳しくは、API レベルのドキュメントをご覧ください。

フレームワーク API の変更

以下のセクションでは、Android 1.6 プラットフォームが提供するアプリケーション フレームワーク API について説明します。

UI フレームワーク

  • アニメーションの動作を制御する android.view.animation の新しいクラスは次のとおりです。
    • AnticipateInterpolator
    • AnticipateOvershootInterpolator
    • BounceInterpolator
    • OvershootInterpolator
  • レイアウト ファイルからビューの View.OnClickListener を指定する新しい XML 属性 android:onClick
  • さまざまな画面密度の処理が新たにサポートされました。密度情報は、適切なスケーリングを行うためにビットマップとキャンバスに関連付けられます。フレームワークは、リソースが検出された密度や画面の密度などに基づいて、ビットマップと 9-patch を自動的にスケーリングします。
  • Android 1.6 で導入された API をアプリで使用するには、アプリのマニフェストの <uses-sdk> 要素の属性に適切な値「4」を設定する必要があります。

検索フレームワーク

  • アプリは、クイック検索ボックスで関連するコンテンツを検索候補としてユーザーに表示できるようになりました。クイック検索ボックスは、ホーム画面からアクセスできるデバイス全体の新しい検索機能です。これをサポートするために、検索フレームワークは、検索可能なメタデータ ファイルに新しい属性を追加します。詳細については、SearchManager のドキュメントをご覧ください。

ユーザー補助フレームワーク

  • 新しい android.accessibility パッケージには、ユーザー補助イベントをキャプチャして AccessibilityService ハンドラに転送するためのクラスが含まれています。
  • 新しい AccessibilityService パッケージを使用すると、アプリがユーザー イベントを追跡し、視覚的、音声、または触覚フィードバックをユーザーに提供できます。

ジェスチャー入力

  • ジェスチャーを作成、認識、読み込み、保存するための新しい gesture API。

テキスト読み上げ

  • 新しい android.speech.tts パッケージには、テキストから音声を合成するクラス、すぐに再生するためのクラス、サウンド ファイルを作成するためのクラスが用意されています。

グラフィック

  • android.graphics のクラスが、さまざまな画面密度に合わせたスケーリングをサポートするようになりました。

電話

  • SMS メッセージを送受信するための新しい SmsManager とその他のクラス。

ユーティリティ

  • 現在のデバイス画面の密度を決定するための新しい DisplayMetrics フィールド。

Android マニフェストの要素

  • 新しい <supports-screens> 要素を使用すると、アプリがサポートするように設計、テストされるデバイスの画面サイズを指定できます。「size」は、解像度と密度の組み合わせです。画面サイズが <supports-screen> 要素で指定されていないデバイスでアプリが実行されると、システムはアプリを「互換モード」に表示します。このモードでは、画面の解像度と密度に合わせてアプリ UI がベスト エフォートでスケーリングされます。

    アプリの画面サポートを定義するために使用できる属性は次のとおりです。

    • smallScreen: アプリが小さな画面のデバイスで動作するように設計されているかどうかを示すブール値。 例: 低密度 QVGA、高密度 VGA。
    • normalScreens: アプリが通常の画面のデバイスで動作するように設計されているかどうかを示すブール値。例: 低密度 WQVGA、中密度 HVGA、高密度 WVGA。
    • largeScreens: 非常に大きな画面のデバイスで動作するようにアプリが設計されているかどうかを示すブール値。アプリで画面領域を適切に使用するには特別な注意が必要です。例: 中密度 VGA、中密度 WVGA。
    • anyDensity: アプリが任意の画面密度に対応できるかどうかを示すブール値。
    • resizable: アプリがレイアウトを少し大きな画面に合わせて拡大できるかどうかを示すブール値。

  • 新しい <uses-feature> 要素を使用すると、アプリの正常な動作に必要なハードウェアなどの機能を指定できます。アプリでそのような機能が指定されている場合、システムは、必要な機能を提供するデバイスにのみアプリのインストールを許可します。この要素は次の属性をサポートしています。
    • name: アプリに必要な機能の名前。現在は、カメラとカメラのオートフォーカスがそれぞれ必要であることを示す「android.hardware.camera」と「android.hardware.camera.autofocus」の値を受け入れています。
    • glEsVersion: 必要な OpenGL ES の最小バージョンを示します。
  • <uses-sdk> 要素の新しい属性:
    • targetSdkVersion: アプリがターゲットとする API レベルを示します。古いバージョン(minSdkVersion まで)でも動作しますが、ここで指定されたバージョンで動作することが明示的にテストされています。このバージョンを指定すると、プラットフォームで不要な互換性コードを無効にしたり、古いアプリでは使用できない新しい機能を有効にしたりできます。
    • maxSdkVersion: アプリの実行を想定した最大 API レベルを示します。重要: この属性を使用する前に、<uses-sdk> のドキュメントをご覧ください。

新しい権限

  • CHANGE_WIFI_MULTICAST_STATE: Wi-Fi マルチキャスト モードへの移行をアプリに許可します。
  • GLOBAL_SEARCH: グローバル検索システムに、指定したコンテンツ プロバイダのデータへのアクセスを許可します。
  • INSTALL_LOCATION_PROVIDER: ロケーション マネージャーへの位置情報プロバイダのインストールをアプリに許可します。
  • READ_HISTORY_BOOKMARKS: ユーザーの閲覧履歴とブックマークの読み取り(書き込みは不可)をアプリに許可します。
  • WRITE_HISTORY_BOOKMARKS: ユーザーの閲覧履歴とブックマークの書き込みをアプリに許可します(読み取りは許可しない)。
  • WRITE_EXTERNAL_STORAGE: 外部ストレージへの書き込みをアプリに許可します。API レベル 3 以下を使用しているアプリには、この権限が暗黙的に付与されます(この権限はユーザーに表示されます)。API レベル 4 以上を使用しているアプリは、この権限を明示的にリクエストする必要があります。

API の違いレポート

Android 1.6(API レベル 4)における API の変更点(以前のバージョンと比較)について詳しくは、API の違いレポートをご覧ください。

組み込みアプリ

ダウンロード可能なプラットフォームに含まれるシステム イメージには、次の組み込みアプリケーションが用意されています。

  • アラーム
  • Browser
  • 電卓
  • ビデオ録画
  • カメラ
  • 連絡先
  • カスタム ロケール(デベロッパー アプリ)
  • Dev Tools(デベロッパー アプリ)
  • 電話アプリ
  • メール
  • ギャラリー
  • ジェスチャー ビルダー
  • 日本語テキスト入力用の IME
  • メッセージ
  • 音楽
  • 設定
  • Spare Parts(デベロッパー アプリ)

言語

ダウンロード可能なプラットフォームに含まれるシステム イメージには、さまざまなロケールが組み込まれています。ロケールによっては、地域固有の文字列を使用できる場合もあります。デフォルト バージョンの言語が使用される場合もあります。Android 1.6 システム イメージで使用可能な言語は以下のとおりです(language_country/region ロケール記述子を参照)。

  • 中国語(中国、中国)(zh_CN)
  • 中国語、台湾(zh_TW)
  • チェコ語(cs_CZ)
  • オランダ語、オランダ(nl_NL)
  • オランダ語、ベルギー(nl_BE)
  • 英語、米国(en_US)
  • 英語、英国(en_GB)
  • 英語、カナダ(en_CA)
  • 英語、オーストラリア(en_AU)
  • 英語、ニュージーランド(en_NZ)
  • 英語、シンガポール(en_SG)
  • フランス語、フランス(fr_FR)
  • フランス語、ベルギー(fr_BE)
  • フランス語、カナダ(fr_CA)
  • フランス語、スイス(fr_CH)
  • ドイツ語、ドイツ(de_DE)
  • ドイツ語、オーストリア(de_AT)
  • ドイツ語、スイス(de_CH)
  • ドイツ語、リヒテンシュタイン(de_LI)
  • イタリア語、イタリア(it_IT)
  • イタリア語、スイス(it_CH)
  • 日本語(ja_JP)
  • 韓国語(ko_KR)
  • ポーランド語(pl_PL)
  • ロシア語(ru_RU)
  • スペイン語(es_ES)
  • ローカライズされた UI 文字列は、設定からアクセスできるロケールと一致します。

    エミュレータ スキン

    ダウンロード可能なプラットフォームには、さまざまな画面サイズと解像度でアプリをモデル化するために使用できるエミュレータ スキンのセットが含まれています。エミュレータ スキンは次のとおりです。

    • QVGA(240x320、低密度、小画面)
    • HVGA(320x480、中密度、標準画面)
    • WVGA800(480x800、高密度、標準画面)
    • WVGA854(480x854 高密度、標準画面)

    すべての Android 搭載デバイスで適切に表示され、機能するアプリを開発する方法については、複数画面のサポートをご覧ください。