Android 3.1 の API

API レベル: 12

デベロッパー向け Android 3.1 プラットフォーム (HONEYCOMB_MR1)は以下で利用できます: コンポーネントをダウンロードします。このダウンロード可能なプラットフォームには Android ライブラリとシステム イメージ、エミュレータ スキンのセットと、 できます。ダウンロード可能なプラットフォームに外部ライブラリは含まれていません。

デベロッパー向け Android 3.1 プラットフォームは、 コンポーネントをダウンロードします。このダウンロード可能なプラットフォームには Android ライブラリとシステム イメージ、エミュレータ スキンのセットと、 できます。Android 3.1 に対する開発やテストを開始するには、 Android SDK Manager を使用して、SDK にプラットフォームをダウンロードします。

API の概要

以下のセクションでは、デベロッパー向けの新機能に関する技術的な概要を説明します。 Android 3.1 の新機能です。これには、フレームワーク API の新機能と変更が含まれています。 おすすめします。

USB API

Android 3.1 では、新しい強力な API が導入されており、 接続された周辺機器をプラットフォーム上で動作するアプリケーションと統合します。 API は USB(Universal Serial Bus)スタックをベースにしており、 USB ホストとデバイスの両方をサポートするなど、プラットフォームに組み込み やり取りできますデベロッパーはこの API を使用して、 ネットワークで接続されたさまざまなデバイスの検出、通信、管理 USB。

スタックと API は、以下に示す 2 つの基本的なタイプの USB ハードウェアを区別します。 Android 搭載デバイスがホストまたは外部ハードウェアとして機能しているかどうか ホストとして動作しています。

  • USB デバイスは、 ホストとして機能する Android 搭載デバイス。たとえば、ほとんどの入力デバイス、マウス、 多くのカメラやハブと同様に、ジョイスティックは USB デバイスです。
  • USB アクセサリ: USB ポートを備えた接続されたハードウェア 電源を供給します。このコントローラは、Google Compute の USB 経由の Android 搭載デバイス。さまざまな周辺機器を USB ポートとして ロボットコントローラや楽器、エクササイズ用自転車など、 使用できます。

USB デバイスと USB アクセサリのどちらも、 プラットフォームの USB API では、接続時または接続時のインテント ブロードキャストによる検出がサポートされています。 標準インターフェース、エンドポイント、転送モードに対応 (制御、一括、割り込み)。

USB API は android.hardware.usb パッケージで入手できます。「 中央のクラスは UsbManager で、 API と通信するためのヘルパー メソッドを USB デバイスと USB アクセサリの両方に対応しています。アプリケーションは、サービス アカウントのインスタンスを UsbManager を実行して、アタッチされているリスト 管理できるようにし、通信や管理を行います。 UsbManager は、ユーザーがリクエストするインテントのアクションを USB デバイスやアクセサリが接続されたことを通知します。 接続解除します

その他のクラス:

  • UsbDevice: 外部 IP アドレスを表すクラス USB デバイスとして接続されたハードウェア(Android 搭載デバイス あります。
  • UsbAccessory(外部ハードウェアを表す) USB ホストとして接続している(Android 搭載デバイスを USB として機能させる) 。
  • UsbInterfaceUsbEndpoint: 標準 USB へのアクセスを提供します。 インターフェースとエンドポイントです
  • UsbDeviceConnectionUsbRequest: データの送受信と制御のため USB デバイスとの間で送受信されるメッセージを同期的および非同期的に分析できます。
  • UsbConstants: 次の定数を エンドポイント タイプ、デバイスクラスなどの宣言が含まれます。

USB スタックはプラットフォームに組み込まれていますが、実際のサポートは 特定のデバイスでの USB ホスト モードとオープン アクセサリ モードは、 製造しています。特に、ホストモードは適切な USB デバイス、 Android 搭載デバイスで 使用する必要があります

さらに、デベロッパーは Google Play で ユーザーが、ユーザーのデバイスに Google Cloud の 適切な USB サポートが必要です。フィルタリングをリクエストするには、一方または両方の要素を追加してください 以下を適宜アプリ マニフェストに追加します。

  • USB をサポートするデバイスにのみアプリを表示するかどうか ホストモード(USB デバイスの接続)では、この要素を宣言します。

    <uses-feature android:name="android.hardware.usb.host" android:required="true">

  • USB をサポートするデバイスにのみアプリを表示するかどうか アクセサリ(USB ホストの接続)では、この要素を宣言します。

    <uses-feature android:name="android.hardware.usb.accessory" android:required="true">

Google Cloud とやり取りするアプリケーションの開発方法については、 USB アクセサリについては、 デベロッパー向けドキュメントをご覧ください。

USB ホスト API を使用するサンプル アプリケーションについては、ADB TestMissile を参照してください。 ランチャー

MTP/PTP API

Android 3.1 で公開中の新しい MTP API を使用すると、アプリが直接やり取りできるようになります 接続カメラやその他の PTP デバイスと同期できます新しい API を使用すると、 デバイスの取り付けや取り外し時に通知を受け取ることができます。 それらのデバイス上のファイルやストレージを管理し、ファイルやメタデータを できます。MTP API は PTP(画像転送プロトコル)サブセットを実装する MTP(メディア転送プロトコル)仕様に準拠しています。

MTP API は android.mtp パッケージで提供され、 これらのクラス:

  • MtpDevice は、現在の MTP デバイスをカプセル化します。 接続されています。アプリケーションは、Cloud Storage バケットを そのメソッドを使用してデバイスに関する情報を取得し、 オブジェクトの作成、接続の開始、データの転送を行えます。 たとえば、次のような方法があります。 <ph type="x-smartling-placeholder">
      </ph>
    • getObjectHandles() は、デバイス上のすべてのオブジェクトのハンドルのリストを返します。 一致します。オブジェクトに関する情報を取得するには、 アプリケーションは getObjectInfo() にハンドルを渡すことができます。
    • importFile() を使用すると、アプリケーションはオブジェクトのデータを外部のファイルにコピーできます。 ストレージです。この呼び出しは、結果に応じて任意の時間ブロックする場合があり、 デバイスのデータサイズと速度です 使用します。
    • open() を使用すると、接続されている MTP/PTP デバイスをアプリケーションで開くことができます。
    • 返品可能(返品手数料: getThumbnail()) オブジェクトのサムネイルをバイト配列として格納します。
  • MtpStorageInfo には、ストレージに関する情報が含まれています。 ( MTP 仕様のセクション 5.2.2 を参照してください。このクラスのメソッドを使用すると、 ストレージ ユニットの説明文字列、空き容量、最大ストレージ容量、 ストレージ ID、ボリューム ID などです
  • MtpDeviceInfo は MTP デバイスに関する情報を保持します。 MTP のセクション 5.1.1 に記載されている DeviceInfo Dataset に 仕様。このクラスのメソッドを使用すると、アプリがデバイスの認証情報を メーカー、モデル、シリアル番号、バージョンなどの情報を記録します。
  • MtpObjectInfo は、保存されているオブジェクトに関する情報を保持します。 MTP デバイス上で動作すること。 MTP 仕様の 5.3.1。このクラスのメソッドを使用すると、アプリケーションは オブジェクトのサイズ、データ形式、関連付けのタイプ、作成日、サムネイル 情報です。
  • MtpConstants は MTP ファイルを宣言するための定数を提供します。 形式コード、関連付けタイプ、保護ステータスです。

新しい入力デバイスとモーション イベントのサポート

Android 3.1 では、入力サブシステムが拡張され、新しい入力デバイスと モーションイベントのタイプを すべてのビューとウィンドウで分析できますデベロッパーは ユーザーがマウスを使ってアプリケーションを操作できるようにする トラックボール、ジョイスティック、ゲームパッド、その他のデバイスに加えて、 タッチスクリーン。

マウス、スクロールホイール、トラックボールの入力を処理する場合、プラットフォームでは 2 つの新しいモーション イベント アクション:

  • ACTION_SCROLL: ポインタを記述します。 マウスのスクロール ホイールなどによるタップ以外のスクロール動作の位置 行ったことになります。MotionEvent では、AXIS_HSCROLL 軸と AXIS_VSCROLL 軸の値で相対的なスクロールを指定します。 ムーブメントです。
  • ACTION_HOVER_MOVE、現在の 押されていないときのマウス位置と中間点として表示される ポイントを獲得しました。HOVER_MOVEカーソルを合わせて開始 / 終了 通知はまだサポートされていません

ジョイスティックとゲームパッドをサポートするため、InputDevice クラス 次の新しい入力デバイス ソースが含まれています。

これらの新しいソースからのモーション イベントとマウスのモーション イベントについて説明する KeyEvent でのキーコードの定義と同様に、MotionEvent で軸コードを定義するようになりました。ジョイスティックの新しい軸コード コントローラには、 AXIS_HAT_XAXIS_HAT_YAXIS_RTRIGGERAXIS_ORIENTATIONAXIS_THROTTLE、他多数。 既存の MotionEvent 軸は AXIS_XAXIS_YAXIS_PRESSUREAXIS_SIZEAXIS_TOUCH_MAJORAXIS_TOUCH_MINORAXIS_TOOL_MAJORAXIS_TOOL_MINORAXIS_ORIENTATION

また、MotionEvent は、汎用変数の値を数多く定義します。 フレームワークが 指定します。特定のデバイスでは、汎用軸コードを使用してカスタム アプリケーションに提供します。軸の一覧とその用途については、 MotionEvent クラスのドキュメントをご覧ください。

このプラットフォームは、複数のモーション イベントを一括してアプリケーションに提供します。そのため、1 つの イベントには、現在の位置と、複数のいわゆる過去の移動が含まれる場合があります。 アプリは getHistorySize() を使用して、 すべての過去のサンプルを取得して処理し、 getHistoricalAxisValue() を使用して順番にサンプルを表示します。その後、アプリケーションは現在の getAxisValue() を使用したサンプル。

一部の軸は、特別なアクセサ メソッドを使用して取得できます。たとえば アプリは getAxisValue() を呼び出す代わりに、getX() を呼び出すことができます。アクセサが組み込まれている軸には、AXIS_XAXIS_YAXIS_PRESSUREAXIS_SIZEAXIS_TOUCH_MAJORAXIS_TOUCH_MINORAXIS_TOOL_MAJORAXIS_TOOL_MINORAXIS_ORIENTATION

各入力デバイスにはシステムによって割り当てられた一意の ID があり、 複数のソースがあります。デバイスに複数のソースがある場合、複数のソースが 同じ軸を使用して軸データを指定できます。たとえば、次のタップイベントが X 軸で画面の位置データを取得し、ジョイスティックの操作を ジョイスティック ソースから送信されるイベントでは、スティックの位置に X 軸が使用されます。 してください。このため、アプリケーションで軸の解釈が 値が自動的に計算されます。モーションの処理時 イベントを処理する場合は、InputDevice クラスを使用して、デバイスまたはソースでサポートされている軸を決定します。具体的には アプリは getMotionRanges() を使用して、デバイスのすべての軸、または特定の軸の全軸をクエリできる 通信します。どちらの場合も、 InputDevice.MotionRange オブジェクトは、Cloud Storage バケットの 表示されます。

最後に、ジョイスティック、ゲームパッド、マウス、 トラックボールはタッチイベントではありません。プラットフォームでは、 「generic」として View に渡すモーション イベント。 具体的には、タップ以外のモーション イベントを onTouchEvent() ではなく onGenericMotionEvent() の呼び出しを通じて View

プラットフォームが一般的なモーション イベントをディスパッチする方法は、 イベントソースクラス。SOURCE_CLASS_POINTER 件のイベント タップ操作と同様に、ポインタの下のViewに移動します 機能します。他はすべて、現在フォーカスされている View に移動します。 たとえば、次の操作を行うには View がフォーカスを取得する必要があります。 ジョイスティック イベントを受信できます。必要に応じて、アプリケーションはこれらのイベントを 代わりに onGenericMotionEvent() を実装して、アクティビティまたはダイアログのレベルを指定できます。

ジョイスティック モーションを使用するサンプルアプリを見る GameControllerInput をご覧ください。 GameView などがあります。

RTP API

Android 3.1 で、組み込みの RTP(Real-time Transport Protocol)に API が公開 (アプリケーションがオンデマンドまたはインタラクティブなデータの管理に使用できる) 説明します。特に、VOIP、プッシュツートーク、会議、 音声ストリーミングでは、API を使用してセッションを開始し、 任意のネットワークでデータ ストリームを転送できます。

RTP API は android.net.rtp パッケージで使用できます。クラス 含める:

  • RtpStream: 送受信するストリームの基本クラス メディア ペイロードを含むネットワーク パケットを RTP 経由で受信します。
  • AudioStream: RTP 経由でオーディオ ペイロードを伝送する RtpStream のサブクラス。
  • AudioGroup: 管理と保守のためのローカル オーディオ ハブ デバイスのスピーカー、マイク、AudioStream をミキシングします。
  • AudioCodec: ストリーミング中のコーデックを AudioStream に対して定義します。

音声会議などの使用をサポートするために、アプリは 2 つのクラスをストリームのエンドポイントとして使用します。

  • AudioStream は、リモート エンドポイントを指定します。これは、 ネットワーク マッピングと構成された AudioCodec
  • AudioGroup は、Pod のローカル エンドポイントを表します。 少なくとも AudioStreamAudioGroup のミックス すべての AudioStream を割り当て、必要に応じてデバイスとやり取りする スピーカーとマイクを同時に使用できます。

最も簡単な使用方法は、単一のリモート エンドポイントとローカル エンドポイントを使用します。 より複雑な使用方法については、 AudioGroup

RTP API を使用するには、アプリケーションで <uses-permission android:name="android.permission.INTERNET"> の宣言 記述する必要があります。デバイスのマイクを取得するには、<uses-permission android:name="android.permission.RECORD_AUDIO"> 権限も必要です。

サイズ変更可能なアプリ ウィジェット

Android 3.1 以降では、デベロッパーはホーム画面ウィジェットを作成できます。 サイズ変更が可能です(横方向、縦方向、両軸のいずれか)。ユーザーは ウィジェットをクリックしてサイズ変更ハンドルを表示し、水平または垂直方向をドラッグ レイアウト グリッドのサイズを変更できます。

ホーム画面のウィジェットは、 ウィジェットの AppWidgetProviderInfo メタデータの resizeMode 属性。 resizeMode 属性には「横」、「縦」、「なし」があります。 ウィジェットを水平方向や垂直方向にサイズ変更可能として宣言するには、 "横|縦")。

次に例を示します。

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:minWidth="294dp"
    android:minHeight="72dp"
    android:updatePeriodMillis="86400000"
    android:previewImage="@drawable/preview"
    android:initialLayout="@layout/example_appwidget"
    android:configure="com.example.android.ExampleAppWidgetConfigure"
    android:resizeMode="horizontal|vertical" >
</appwidget-provider>

ホーム画面ウィジェットについて詳しくは、アプリ ウィジェットをご覧ください。 ご覧ください

アニメーション フレームワーク

  • 新しい ViewPropertyAnimator クラス <ph type="x-smartling-placeholder">
      </ph>
    • 新しい ViewPropertyAnimator クラスは、 便利 デベロッパーが View オブジェクトの選択プロパティをアニメーション化する方法です。クラス プロパティのアニメーションが自動化、最適化され、 View オブジェクトで複数のアニメーションを同時に管理する。

      ViewPropertyAnimator の使用は簡単です。プロパティをアニメーション化するには、 Viewanimate() を呼び出して その ViewViewPropertyAnimator オブジェクトを構築します。こちらの メソッドを ViewPropertyAnimator のメソッド内で使用して、表示するプロパティを指定します。 アニメーション化する方法を学びましたたとえば、View を透明にフェードするには、次のようにします。 alpha(0); を呼び出します。ViewPropertyAnimator オブジェクト 基になる Animator クラスを構成して起動し、 作成します。

  • アニメーションの背景色 <ph type="x-smartling-placeholder">
      </ph>
    • 新しい getBackgroundColor()setBackgroundColor(int) メソッドを使用すると、 ウィンドウ アニメーションのために、アニメーションの背景色を取得または設定する のみです。現時点では、背景は黒で任意のアルファレベルにする必要があります。
  • ViewAnimator からアニメーション化された分数を取得しています <ph type="x-smartling-placeholder">
      </ph>
    • 新しい getAnimatedFraction() 支払い方法 現在のアニメーションの割合(経過時間/補間)を取得できます 最新のフレーム更新で使用された割合(ValueAnimator から)。

UI フレームワーク

  • レイヤの強制レンダリング <ph type="x-smartling-placeholder">
      </ph>
    • 新しい buildLayer() メソッドを使用すると、アプリは View のレイヤが強制的に作成され、ビューが直ちにそのレイヤにレンダリングされます。 たとえば、アプリケーションはこのメソッドを使用してビューをアプリケーションに レイヤを追加します。ビューが複雑な場合は フレームのスキップを回避します。
  • カメラ距離 <ph type="x-smartling-placeholder">
      </ph>
    • アプリケーションは新しいメソッドを setCameraDistance(float): カメラ ビューに割り当てられますこれにより、アプリケーションでの 3D 変換の制御が改善され、 ビューに追加することもできます。
  • DatePicker からカレンダー ビューを取得する <ph type="x-smartling-placeholder">
  • ビューがデタッチされたときにコールバックを取得する <ph type="x-smartling-placeholder">
  • フラグメント パンくずリスト リスナー、新しい onInflate() シグネチャ <ph type="x-smartling-placeholder">
  • 検索結果を新しいタブに表示する <ph type="x-smartling-placeholder">
  • ドローアブル テキスト カーソル <ph type="x-smartling-placeholder">
  • リモートビューに表示される子の設定 <ph type="x-smartling-placeholder">
  • ゲームパッドなどの入力デバイスの汎用キー <ph type="x-smartling-placeholder">
      </ph>
    • KeyEvent は、さまざまな汎用キーコードを ゲームパッドのボタンに対応します。このクラスは、 isGamepadButton(int) さんと他数人 ヘルパー メソッドをサポートしています。

グラフィック

  • ビットマップを管理するためのヘルパー <ph type="x-smartling-placeholder">
      </ph>
    • setHasAlpha(boolean): アプリは以下を通知できます。 ビットマップのすべてのピクセルが不透明(false)であると認識されているか、 ピクセルに不透明なアルファ値(true)が含まれていることがあります。一部の構成( RGB_565 など)を指定します。この呼び出しは、ピクセルごとのアルファをサポートしていないため無視されます。 使用できます。これは描画のヒントを示すものであり、既知のビットマップが を描画する場合、非不透明の場合よりも描画ケースが 値を指定します。
    • getByteCount() はビットマップのサイズを取得します。 あります。
    • getGenerationId() を使用すると、アプリは キャッシュなどのために、ビットマップが変更されたかどうかの出力。
    • sameAs(android.graphics.Bitmap) が決定 ディメンションが現在のビットマップと異なるかどうか 保存する必要があります
  • カメラの位置と回転を設定する <ph type="x-smartling-placeholder">
      </ph>
    • Camera は、次の 2 つの新しいメソッド rotate()setLocation() を追加します。 コントロール プレーンと カメラの位置を指定します。

ネットワーク

  • 高性能 Wi-Fi ロック <ph type="x-smartling-placeholder">
      </ph>
    • 新しい高性能 Wi-Fi ロックにより、 高パフォーマンスの Wi-Fi 接続を実現します。 音楽、動画、音声を長時間ストリーミングするアプリケーションは、 高性能 Wi-Fi ロックにより、画面が変わってもストリーミングのパフォーマンスを維持 はオフです。消費電力が増えるため、アプリケーションは 高パフォーマンス Wi-Fi に対応しており、長時間のアクティブ インターネットが 接続します

      高性能ロックを作成するには、ロックモードとして WIFI_MODE_FULL_HIGH_PERF を渡します。 createWifiLock() への呼び出し。

  • その他のトラフィック データ <ph type="x-smartling-placeholder">
      </ph>
    • アプリからアクセスできるネットワークの種類が増えました TrafficStats の新しいメソッドを使用します。アプリケーションは UDP の統計情報、パケット数、TCP の送受信ペイロード バイト数、 自動的に作成します。
  • SIP 認証ユーザー名 <ph type="x-smartling-placeholder">
      </ph>
    • プロファイルの SIP 認証ユーザー名をアプリケーションで取得、設定できるようになりました 新しいメソッド getAuthUserName()setAuthUserName()

ダウンロード マネージャー

  • 完了したダウンロードの処理 <ph type="x-smartling-placeholder">
      </ph>
    • ダウンロードをアプリで開始して、ユーザーに 表示されます。このタイプのダウンロードを開始するために、アプリは VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION を渡します。 次の setNotificationVisibility() メソッド内: リクエスト オブジェクト。
    • 新しいメソッド addCompletedDownload() を使用すると、アプリケーションでファイルを データベースをダウンロードし、ダウンロード アプリケーションで管理できるようにします。
  • ダウンロードをサイズ順に並べ替えて表示します <ph type="x-smartling-placeholder">

IME フレームワーク

  • 入力方法の追加値のキーを取得する <ph type="x-smartling-placeholder">
      </ph>
    • InputMethodSubtype は、 支払い方法 containsExtraValueKey(): ExtraValue 文字列が格納されているかどうかを確認します。 サブタイプとして getExtraValueOf() メソッドを使って、ExtraValue ハッシュマップから特定のキー値を抽出します。

メディア

  • 新しいストリーミング オーディオ形式 <ph type="x-smartling-placeholder">
      </ph>
    • メディア フレームワークには、未加工の ADTS AAC コンテンツに対する組み込みサポートが追加されており、 ストリーミング オーディオの改善と FLAC オーディオのサポートにより、高音質を実現 (可逆の)圧縮音声コンテンツです。サポートされているメディア形式をご覧ください ドキュメントをご覧ください。

停止時の起動コントロール アプリケーション

Android 3.1 以降では、システムのパッケージ管理システムが アプリケーションを制御する手段を提供します。 バックグラウンド プロセスや他のアプリから起動しないようにする方法を学びます。

アプリの停止状態は、アクティビティの 停止状態になっています。システムはこの 2 つの停止状態を個別に管理します。

プラットフォームが定義する 2 つの新しいインテント フラグを使用すると、 そのインテントで、停止したコンポーネントをアクティブにできるかどうか 説明します。

インテントでこれらのフラグのどちらも定義されていない場合は、デフォルトの 停止したアプリケーションのフィルタをリストに含めます。 標的となる可能性があります。

FLAG_EXCLUDE_STOPPED_PACKAGES はすべてのブロードキャストに追加されることに注意してください。 定義します。これは、バックグラウンド サービスからのブロードキャストが 停止したアプリケーションのコンポーネントを不注意または不必要に起動する場合に備えます。 バックグラウンド サービスまたはアプリは、 ブロードキャストする FLAG_INCLUDE_STOPPED_PACKAGES フラグ 停止したアプリのアクティブ化を許可するべきインテントです。

アプリケーションは、最初にインストールされたときに停止した状態になっていますが、 ユーザーが手動で停止した場合([Manage] で) 。

アプリケーションの初回起動とアップグレードに関する通知

プラットフォームでは、アプリの初回起動の通知が改善され、 2 つの新しいインテント アクションを使用してアップグレードできます。

  • ACTION_PACKAGE_FIRST_LAUNCH - 送信先 アプリケーションの初回起動時、そのアプリケーションのインストーラ パッケージ (初めて停止状態から移行したとき)。データ パッケージの名前が格納されています。
  • ACTION_MY_PACKAGE_REPLACED - 通知 更新され、新しいバージョンがインストールされたアプリケーション 削除することもできます。これは、置き換えられたアプリケーションにのみ送信されます。これは、 追加データは含まれません。これを受信するには、インテント フィルタを宣言します。 表示されます。インテントを使用して、API を呼び出すためのコードをトリガーし、 アプリが正常な状態に保たれるようにすることです。

    このインテントはアプリケーションに直接送信されます。ただし、 は(停止状態ではなく)開始状態の間にアップグレードされました。

主要なユーティリティ

  • LRU キャッシュ <ph type="x-smartling-placeholder">
      </ph>
    • 新しい LruCache クラスを使用すると、アプリケーションにメリットを与える 回避できます。アプリケーションでこのクラスを使用すると、 安全なネットワーク状態を維持しつつ、ネットワーク上での キャッシュに保存されたデータのメモリ使用量。LruCache はキャッシュです。 強い参照を保持する関数です値が入力されるたびに、 アクセスされるとキューの先頭に移動します。完全なデータセットに値が追加されると、 そのキューの最後にある値が強制排除され、 使用されます
  • ファイル記述子(int) <ph type="x-smartling-placeholder">
      </ph>
    • 新しいメソッド getFd() または detachFd() のいずれかを使用して、ParcelFileDescriptor のネイティブ ファイル記述子の int を取得できるようになりました。

Webkit

  • ファイル スキーム Cookie <ph type="x-smartling-placeholder">
      </ph>
    • CookieManager で、次を使用する Cookie がサポートされるようになりました。 file: URI スキーム。setAcceptFileSchemeCookies() を使用すると、次のことができます。 インスタンスを作成する前に、ファイル スキーム Cookie のサポートを有効/無効にします。 (WebView または CookieManager)。新しい CookieManager インスタンスでは、ファイル スキームの Cookie が 有効にするには allowFileSchemeCookies() を呼び出します。
  • ログイン リクエストの通知 <ph type="x-smartling-placeholder">
      </ph>
    • Android 3.0 で導入されたブラウザの自動ログイン機能をサポートするために、 新着 メソッド onReceivedLoginRequest() ホストに通知します。 ユーザーの自動ログイン リクエストが処理されたことを通知します。
  • クラスとインターフェースの削除 <ph type="x-smartling-placeholder">
      </ph>
    • いくつかのクラスとインターフェースが公開 API から削除されましたが、 使用されていたためです。API 差異レポートをご覧ください。

ブラウザ

ブラウザ アプリケーションでは、ウェブをサポートするために次の機能を追加します。 アプリケーション:

  • HTML5 に埋め込まれた動画のインライン再生のサポート <video> タグ。再生は可能な限りハードウェア アクセラレーションされています。
  • すべてのサイト(モバイルと あります。

新しい特徴定数

プラットフォームには、デベロッパーが宣言できる新しいハードウェア機能定数が追加されています。 使用して Google Cloud などの外部エンティティに 新しいハードウェア機能のサポートに対するアプリの要件を再生 このバージョンのプラットフォームで 実行することもできますデベロッパーはこれらの機能とその他の機能を申告 <uses-feature> マニフェスト要素内の定数を使用します。

Google Play は、<uses-feature> マニフェスト要素で宣言されている機能に基づいてアプリをフィルタします。詳細については、このモジュールの アプリ マニフェストで機能を宣言する方法については、Google Play フィルタ

API 差分レポート

Android 3.1(API)におけるすべての API の変更点について詳しくは、 レベル 12)については、API 差異レポート

API レベル

Android 3.1 プラットフォームでは、 使用できます。Android 3.1 API 値には整数の識別子( 12 - 保存されることはありません。「API レベル」と呼ばれるこの識別子によって、 アプリが Google Cloud とどのように互換性があるかを インストール前に確認する必要があります。

Android 3.1 で導入された API をアプリで使用するには、 提供されている Android ライブラリを使用してアプリをコンパイルする必要があります。 Android 3.1 SDK プラットフォームに統合されています。必要に応じて、 android:minSdkVersion="12"も追加する必要があります アプリケーションの <uses-sdk> 要素に 使用します。

詳細については、API とは何か レベル