API レベル: 12
デベロッパー向け Android 3.1 プラットフォーム
(HONEYCOMB_MR1
)は以下で利用できます:
コンポーネントをダウンロードします。このダウンロード可能なプラットフォームには
Android ライブラリとシステム イメージ、エミュレータ スキンのセットと、
できます。ダウンロード可能なプラットフォームに外部ライブラリは含まれていません。
デベロッパー向け Android 3.1 プラットフォームは、 コンポーネントをダウンロードします。このダウンロード可能なプラットフォームには Android ライブラリとシステム イメージ、エミュレータ スキンのセットと、 できます。Android 3.1 に対する開発やテストを開始するには、 Android SDK Manager を使用して、SDK にプラットフォームをダウンロードします。
API の概要
以下のセクションでは、デベロッパー向けの新機能に関する技術的な概要を説明します。 を含んでいます。これには、Android 3.1 以降の新機能や おすすめします。
USB API
Android 3.1 では、新しい強力な API が導入されており、 接続された周辺機器をプラットフォーム上で動作するアプリケーションと統合します。 API は、USB(ユニバーサル シリアル バス)スタックと、USB ホストとデバイスの両方のインタラクションのサポートなど、プラットフォームに組み込まれたサービスに基づいています。デベロッパーはこの API を使用して、 ネットワークで接続されたさまざまなデバイスの検出、通信、管理 USB。
スタックと API は、以下に示す 2 つの基本的なタイプの USB ハードウェアを区別します。 Android 搭載デバイスがホストまたは外部ハードウェアとして機能しているかどうか ホストとして動作しています。
- USB デバイスは、ホストとして機能する Android 搭載デバイスに依存する接続ハードウェアです。たとえば、ほとんどの入力デバイス、マウス、 多くのカメラやハブと同様に、ジョイスティックは USB デバイスです。
- USB アクセサリは、USB ホスト コントローラを備え、電力を供給し、USB 経由で Android 搭載デバイスと通信するように設計された接続ハードウェアです。ロボット コントローラから音楽機器、エクササイズ用自転車まで、さまざまな周辺機器をアクセサリとして接続できます。
USB デバイスと USB アクセサリの両方のタイプについて、プラットフォームの USB API は、接続または切断時のインテント ブロードキャストによる検出、標準インターフェース、エンドポイント、転送モード(制御、一括、割り込み)をサポートしています。
USB API は android.hardware.usb
パッケージで入手できます。「
中央のクラスは UsbManager
で、
API と通信するためのヘルパー メソッドを
USB デバイスと USB アクセサリの両方に対応しています。アプリケーションは、サービス アカウントのインスタンスを
UsbManager
を実行して、アタッチされているリスト
管理できるようにし、通信や管理を行います。
UsbManager
は、USB デバイスまたはアクセサリが接続または切断されたときに通知するために、システムがブロードキャストするインテント アクションも宣言します。
その他のクラスには次のようなものがあります。
UsbDevice
: USB デバイスとして接続された外部ハードウェアを表すクラス(Android 搭載デバイスがホストとして機能)。UsbAccessory
(外部ハードウェアを表す) USB ホストとして接続している(Android 搭載デバイスを USB として機能させる) 。UsbInterface
とUsbEndpoint
: 標準 USB へのアクセスを提供します。 インターフェースとエンドポイントですUsbDeviceConnection
とUsbRequest
: 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 Test と Missile を参照してください。 ランチャー
MTP/PTP API
Android 3.1 で公開中の新しい MTP API を使用すると、アプリが直接やり取りできるようになります 接続カメラやその他の PTP デバイスと同期できます新しい API を使用すると、 デバイスの取り付けや取り外し時に通知を受け取ることができます。 それらのデバイス上のファイルやストレージを管理し、ファイルやメタデータを できます。MTP API は、MTP(Media Transfer Protocol)仕様の PTP(Picture Transfer Protocol)サブセットを実装します。
MTP API は android.mtp
パッケージで提供され、
これらのクラス:
MtpDevice
は、現在の MTP デバイスをカプセル化します。 接続されています。アプリケーションはこのタイプのオブジェクトをインスタンス化し、そのメソッドを使用してデバイスとデバイスに保存されているオブジェクトに関する情報を取得したり、接続を開いてデータを転送したりできます。たとえば、次のような方法があります。getObjectHandles()
は、デバイス上のすべてのオブジェクトのハンドルのリストを返します。 一致します。オブジェクトに関する情報を取得するには、 アプリケーションはgetObjectInfo()
にハンドルを渡すことができます。importFile()
を使用すると、アプリケーションはオブジェクトのデータを外部のファイルにコピーできます。 ストレージです。この呼び出しは、結果に応じて任意の時間ブロックする場合があり、 デバイスのデータサイズと速度です 使用します。open()
を使用すると、接続されている MTP/PTP デバイスをアプリケーションで開くことができます。- 返品可能(返品手数料:
getThumbnail()
) オブジェクトのサムネイルをバイト配列として格納します。
MtpStorageInfo
には、MTP デバイス上のストレージ ユニットに関する情報が保持されます。これは、MTP 仕様のセクション 5.2.2 で説明されている StorageInfo データセットに対応しています。このクラスのメソッドを使用すると、 ストレージ ユニットの説明文字列、空き容量、最大ストレージ容量、 ストレージ ID、ボリューム ID などですMtpDeviceInfo
には、MTP 仕様のセクション 5.1.1 で説明されている DeviceInfo データセットに対応する MTP デバイスに関する情報が保持されます。このクラスのメソッドを使用すると、アプリがデバイスの認証情報を メーカー、モデル、シリアル番号、バージョンなどの情報を記録します。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
クラス
次の新しい入力デバイス ソースが含まれています。
SOURCE_CLASS_JOYSTICK
- ソースデバイスにジョイスティックの軸がある。SOURCE_CLASS_BUTTON
- ソース デバイスにはボタンやキーがある。SOURCE_GAMEPAD
- ソースデバイスKEYCODE_BUTTON_A
などのゲームパッド ボタンがある またはKEYCODE_BUTTON_B
。暗示SOURCE_CLASS_BUTTON
SOURCE_JOYSTICK
- ソースデバイス ジョイスティックの軸がありますSOURCE_CLASS_JOYSTICK を意味します。
これらの新しいソースからのモーション イベントと、マウスやトラックボールからのモーション イベントを記述するため、プラットフォームでは、KeyEvent
でキーコードを定義するのと同様に、MotionEvent
で軸コードを定義するようになりました。ジョイスティックの新しい軸コード
コントローラには、
AXIS_HAT_X
、AXIS_HAT_Y
、AXIS_RTRIGGER
、AXIS_ORIENTATION
、AXIS_THROTTLE
、他多数。
既存の MotionEvent
軸は AXIS_X
、AXIS_Y
、
AXIS_PRESSURE
、AXIS_SIZE
、AXIS_TOUCH_MAJOR
、AXIS_TOUCH_MINOR
、AXIS_TOOL_MAJOR
、AXIS_TOOL_MINOR
、AXIS_ORIENTATION
。
また、MotionEvent
は、汎用変数の値を数多く定義します。
フレームワークが
指定します。特定のデバイスでは、汎用軸コードを使用してカスタム
アプリケーションに提供します。軸の一覧とその用途については、
MotionEvent
クラスのドキュメントをご覧ください。
このプラットフォームは、複数のモーション イベントを一括してアプリケーションに提供します。そのため、1 つの
イベントには、現在の位置と、複数のいわゆる過去の移動が含まれる場合があります。
アプリは getHistorySize()
を使用して、
すべての過去のサンプルを取得して処理し、
getHistoricalAxisValue()
を使用して順番にサンプルを表示します。その後、アプリケーションは現在の
getAxisValue()
を使用したサンプル。
一部の軸は、特別なアクセサ メソッドを使用して取得できます。たとえば
アプリは getAxisValue()
を呼び出す代わりに、getX()
を呼び出すことができます。アクセサが組み込まれている軸には、AXIS_X
、AXIS_Y
、
AXIS_PRESSURE
、AXIS_SIZE
、AXIS_TOUCH_MAJOR
、AXIS_TOUCH_MINOR
、AXIS_TOOL_MAJOR
、AXIS_TOOL_MINOR
、AXIS_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 のローカル エンドポイントを表します。 少なくともAudioStream
。AudioGroup
のミックス すべての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
属性の値には、「horizontal」、「vertical」、「none」があります。ウィジェットを水平方向や垂直方向にサイズ変更可能として宣言するには、
"横|縦")。
次に例を示します。
<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.Example>A<ppWidgetConfigure&q>uot; android:resizeMode="horizontal|vertical" /appwidget-provider
ホーム画面ウィジェットについて詳しくは、アプリ ウィジェットをご覧ください。 ご覧ください
アニメーション フレームワーク
- 新しい ViewPropertyAnimator クラス
- 新しい
ViewPropertyAnimator
クラスは、 便利 デベロッパーがView
オブジェクトの選択プロパティをアニメーション化する方法です。クラス プロパティのアニメーションが自動化、最適化され、View
オブジェクトで複数のアニメーションを同時に管理する。ViewPropertyAnimator
の使用は簡単です。View
のプロパティをアニメーション化するには、animate()
を呼び出して、そのView
のViewPropertyAnimator
オブジェクトを作成します。ViewPropertyAnimator
のメソッドを使用して、アニメーション化するプロパティとアニメーション化する方法を指定します。たとえば、View
を透明にするには、alpha(0);
を呼び出します。ViewPropertyAnimator
オブジェクト 基になるAnimator
クラスを構成して起動し、 作成します。
- 新しい
- アニメーションの背景色
- 新しい
getBackgroundColor()
メソッドとsetBackgroundColor(int)
メソッドを使用すると、アニメーションの背後の背景色を取得または設定できます(ウィンドウ アニメーションのみ)。現在、背景は黒で、任意のアルファ レベルにする必要があります。
- 新しい
ViewAnimator
からアニメーション化された分数を取得しています <ph type="x-smartling-placeholder">- </ph>
- 新しい
getAnimatedFraction()
支払い方法 現在のアニメーションの割合(経過時間/補間)を取得できます 最新のフレーム更新で使用された割合(ValueAnimator
から)。
- 新しい
UI フレームワーク
- レイヤの強制レンダリング
- 新しい
buildLayer()
メソッドを使用すると、アプリは View のレイヤが強制的に作成され、ビューが直ちにそのレイヤにレンダリングされます。 たとえば、アプリケーションはこのメソッドを使用してビューをアプリケーションに レイヤを追加します。ビューが複雑な場合は フレームのスキップを回避します。
- 新しい
- カメラ距離
- アプリケーションは新しいメソッドを
setCameraDistance(float)
: カメラ ビューに割り当てられますこれにより、アプリケーションでの 3D 変換の制御が改善され、 ビューに追加することもできます。
- アプリケーションは新しいメソッドを
- DatePicker からカレンダー ビューを取得する
- 新しい
getCalendarView()
メソッド これにより、DatePicker
からCalendarView
を取得できます。 構成されます
- 新しい
- ビューがデタッチされたときにコールバックを取得する
- 新しい
View.OnAttachStateChangeListener
では、 View がウィンドウにアタッチまたはデタッチされたときに発生するコールバック。addOnAttachStateChangeListener()
を使用する リスナーを追加し、addOnAttachStateChangeListener()
で削除します。
- 新しい
- フラグメント パンくずリスト リスナー、新しい onInflate() シグネチャ
- 新しいメソッド
setOnBreadCrumbClickListener()
は、アプリケーションがフラグメント パンくずリストのクリックをインターセプトし、クリックされたバックスタック エントリまたはフラグメントに移動する前に必要なアクションを実行できるようにするフックを提供します。 Fragment
クラスでは、onInflate(attrs, savedInstanceState)
のサポートが終了しました。代わりにonInflate(activity, attrs, savedInstanceState)
を使用してください。
- 新しいメソッド
- 検索結果を新しいタブに表示する
ACTION_WEB_SEARCH
インテントでEXTRA_NEW_SEARCH
データキーを使用すると、 新しいブラウザタブを使用します。
- ドローアブル テキスト カーソル
- 新しい
リソース属性
textCursorDrawable
。
- 新しい
リソース属性
- リモートビューに表示される子の設定
RemoteViews
サブクラスで新しい便利なメソッドsetDisplayedChild(viewId, childIndex)
が利用可能になり、ViewAnimator
サブクラスとAdapterViewAnimator
サブクラス(AdapterViewFlipper
、StackView
、ViewFlipper
、ViewSwitcher
など)に表示される子を設定できるようになりました。
- ゲームパッドなどの入力デバイスの汎用キー
KeyEvent
は、さまざまな汎用キーコードを ゲームパッドのボタンに対応します。このクラスは、isGamepadButton(int)
さんと他数人 ヘルパー メソッドをサポートしています。
グラフィック
- ビットマップを管理するためのヘルパー
setHasAlpha(boolean)
: アプリは以下を通知できます。 ビットマップのすべてのピクセルが不透明(false)であると認識されているか、 ピクセルに不透明なアルファ値(true)が含まれていることがあります。一部の構成( RGB_565 など)を指定します。この呼び出しは、ピクセルごとのアルファをサポートしていないため無視されます。 使用できます。これは描画のヒントを示すものであり、既知のビットマップが を描画する場合、非不透明の場合よりも描画ケースが 値を指定します。getByteCount()
はビットマップのサイズを取得します。 あります。getGenerationId()
を使用すると、アプリは キャッシュなどのために、ビットマップが変更されたかどうかの出力。sameAs(android.graphics.Bitmap)
の決定 ディメンションが現在のビットマップと異なるかどうか 保存する必要があります
- カメラの位置と回転を設定する
Camera
は、次の 2 つの新しいメソッドrotate()
とsetLocation()
を追加します。 コントロール プレーンと カメラの位置を指定します。
ネットワーク
- 高性能 Wi-Fi ロック
- 新しい高性能 Wi-Fi ロックにより、
高パフォーマンスの Wi-Fi 接続を実現します。
音楽、動画、音声を長時間ストリーミングするアプリケーションは、
高性能 Wi-Fi ロックにより、画面が変わってもストリーミングのパフォーマンスを維持
はオフです。消費電力が増えるため、アプリケーションは
高パフォーマンス Wi-Fi に対応しており、長時間のアクティブ インターネットが
接続します
高パフォーマンスのロックを作成するには、
createWifiLock()
の呼び出しでロックモードとしてWIFI_MODE_FULL_HIGH_PERF
を渡します。
- 新しい高性能 Wi-Fi ロックにより、
高パフォーマンスの Wi-Fi 接続を実現します。
音楽、動画、音声を長時間ストリーミングするアプリケーションは、
高性能 Wi-Fi ロックにより、画面が変わってもストリーミングのパフォーマンスを維持
はオフです。消費電力が増えるため、アプリケーションは
高パフォーマンス Wi-Fi に対応しており、長時間のアクティブ インターネットが
接続します
- その他のトラフィック データ
- アプリからアクセスできるネットワークの種類が増えました
TrafficStats
の新しいメソッドを使用します。アプリケーションは UDP の統計情報、パケット数、TCP の送受信ペイロード バイト数、 自動的に作成します。
- アプリからアクセスできるネットワークの種類が増えました
- SIP 認証ユーザー名
- プロファイルの SIP 認証ユーザー名をアプリケーションで取得、設定できるようになりました
新しいメソッド
getAuthUserName()
とsetAuthUserName()
。
- プロファイルの SIP 認証ユーザー名をアプリケーションで取得、設定できるようになりました
新しいメソッド
ダウンロード マネージャー
- 完了したダウンロードの処理
- ダウンロードをアプリで開始して、ユーザーに
表示されます。このタイプのダウンロードを開始するには、リクエスト オブジェクトの
setNotificationVisibility()
メソッドにVISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION
を渡します。 - 新しいメソッド
addCompletedDownload()
を使用すると、アプリケーションでファイルを データベースをダウンロードし、ダウンロード アプリケーションで管理できるようにします。
- ダウンロードをアプリで開始して、ユーザーに
表示されます。このタイプのダウンロードを開始するには、リクエスト オブジェクトの
- ダウンロードをサイズ順に並べ替えて表示します
- サイズ順の並べ替えモードでダウンロード アプリを起動するには、
新しい
INTENT_EXTRAS_SORT_BY_SIZE
をACTION_VIEW_DOWNLOADS
インテントに追加する。
- サイズ順の並べ替えモードでダウンロード アプリを起動するには、
新しい
IME フレームワーク
- 入力方法の追加値のキーを取得する
InputMethodSubtype
は、 支払い方法containsExtraValueKey()
: ExtraValue 文字列が格納されているかどうかを確認します。 サブタイプとしてgetExtraValueOf()
メソッドを使って、ExtraValue ハッシュマップから特定のキー値を抽出します。
メディア
- 新しいストリーミング オーディオ形式
- メディア フレームワークには、ストリーミング オーディオの改善を目的とした未加工の ADTS AAC コンテンツの組み込みサポートが追加されています。また、FLAC オーディオのサポートも追加されており、最高品質(ロスレス)の圧縮オーディオ コンテンツを実現できます。サポートされているメディア形式をご覧ください ドキュメントをご覧ください。
停止したアプリケーションの制御を起動する
Android 3.1 以降では、システムのパッケージ マネージャーが停止状態のアプリを追跡し、バックグラウンド プロセスや他のアプリからの起動を制御する手段を提供します。
アプリの停止状態は、アクティビティの停止状態とは異なります。システムはこの 2 つの停止状態を個別に管理します。
プラットフォームでは、停止したアプリ内のコンポーネントをインテントに有効にすることを送信者が指定できるように、2 つの新しいインテント フラグが定義されています。
FLAG_INCLUDE_STOPPED_PACKAGES
- 停止したアプリのインテント フィルタをターゲット候補のリストに含める わかりますFLAG_EXCLUDE_STOPPED_PACKAGES
- 停止したアプリのインテント フィルタを候補リストから除外する できます。
インテントでこれらのフラグのどちらも定義されていない場合は、デフォルトの 停止したアプリケーションのフィルタをリストに含めます。 標的となる可能性があります。
FLAG_EXCLUDE_STOPPED_PACKAGES
はすべてのブロードキャストに追加されることに注意してください。
定義します。これは、バックグラウンド サービスからのブロードキャストが、停止したアプリのコンポーネントを誤ってまたは不必要に起動することを防ぐためです。バックグラウンド サービスまたはアプリは、
ブロードキャストする FLAG_INCLUDE_STOPPED_PACKAGES
フラグ
停止したアプリのアクティブ化を許可するべきインテントです。
アプリケーションは、最初にインストールされたときに停止した状態になっていますが、 ユーザーが手動で停止した場合([Manage] で) 。
アプリケーションの初回起動とアップグレードに関する通知
プラットフォームでは、2 つの新しいインテント アクションを通じて、アプリケーションの初回起動とアップグレードの通知が改善されています。
ACTION_PACKAGE_FIRST_LAUNCH
- 送信先 アプリケーションの初回起動時、そのアプリケーションのインストーラ パッケージ (初めて停止状態から移行したとき)。データ パッケージの名前が格納されています。ACTION_MY_PACKAGE_REPLACED
- 通知 更新され、新しいバージョンがインストールされたアプリケーション 削除することもできます。これは、置き換えられたアプリケーションにのみ送信されます。追加のデータは含まれません。このインテントを受け取るには、このアクションのインテント フィルタを宣言します。インテントを使用して、API を呼び出すためのコードをトリガーし、 アプリが正常な状態に保たれるようにすることです。このインテントは、アプリが起動状態(停止状態ではない)のときにアップグレードされた場合にのみ、アプリに直接送信されます。
主要なユーティリティ
- LRU キャッシュ
- ファイル記述子(
int
) <ph type="x-smartling-placeholder">- </ph>
- 新しいメソッド
getFd()
またはdetachFd()
のいずれかを使用して、ParcelFileDescriptor
のネイティブ ファイル記述子 int を取得できるようになりました。
- 新しいメソッド
Webkit
- ファイル スキーム Cookie
CookieManager
で、次を使用する Cookie がサポートされるようになりました。file:
URI スキーム。setAcceptFileSchemeCookies()
を使用すると、次のことができます。 インスタンスを作成する前に、ファイル スキーム Cookie のサポートを有効/無効にします。 (WebView
またはCookieManager
)。CookieManager
インスタンスで、allowFileSchemeCookies()
を呼び出してファイル スキーム Cookie が有効になっているかどうかを確認できます。
- ログイン リクエストの通知
- Android 3.0 で導入されたブラウザの自動ログイン機能をサポートするために、
新着
メソッド
onReceivedLoginRequest()
ホストに通知します。 ユーザーの自動ログイン リクエストが処理されたことを通知します。
- Android 3.0 で導入されたブラウザの自動ログイン機能をサポートするために、
新着
メソッド
- クラスとインターフェースを削除。
- いくつかのクラスとインターフェースが、非推奨の状態になってから公開 API から削除されました。API 差異レポートをご覧ください。
ブラウザ
ブラウザ アプリケーションでは、ウェブをサポートするために次の機能を追加します。 アプリケーション:
- HTML5 に埋め込まれた動画のインライン再生のサポート
<video>
タグ。再生は可能な限りハードウェア アクセラレーションされています。 - すべてのサイト(モバイルとパソコン)の固定位置要素のレイヤ サポート。
新しい特徴定数
プラットフォームには、デベロッパーが宣言できる新しいハードウェア機能定数が追加されています。
使用して Google Cloud などの外部エンティティに
新しいハードウェア機能のサポートに対するアプリの要件を再生
このバージョンのプラットフォームで
実行することもできますデベロッパーはこれらの機能とその他の機能を申告
<uses-feature>
マニフェスト要素内の定数を使用します。
android.hardware.usb.accessory
- アプリは USB API: USB 経由で接続された外部ハードウェア デバイスと通信し、 ホストとして機能します。android.hardware.usb.host
- アプリは USB API を使用して、USB 経由で接続された外部ハードウェア デバイスと通信し、デバイスとして機能します。
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 とは何か レベル