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 の違いレポートをご覧ください。

組み込みアプリケーション

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

  • アラーム
  • ブラウザ
  • 電卓
  • ビデオ録画
  • カメラ
  • 連絡先
  • Custom Locale(デベロッパー アプリ)
  • 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 搭載デバイスで適切に表示され、機能するアプリを開発する方法については、複数画面のサポートをご覧ください。