2011年2月10日木曜日

Android 2.3.3 Platform

Android 2.3.3 Platform

API Level: 10

Android 2.3.3 は Android 2.3 platform にいくつかの改善した API を付加したリリースです。

開発者は Android 2.3.3 platform を Android SDK のコンポーネントとしてダウンロードできます。ダウンロードできる platform は Android library と system image を含み、エミュレータのスキンなどのセットも含まれます。ダウンロードできる platform には外部ライブラリは含まれません。

Android 2.3.3 用の開発とテストを開始するには、Android SDK Manager で SDK に platform をダウンロードしてください。より詳しい情報は Android SDK Components を見てください。初めて Android 開発を始める方はまず download the SDK Starter Package を行ってください。

Android 2.3 のより詳しい紹介は Platform Highlights を見てください。

-----------------------------------
API Overview

以下のセクションは 2.3.3 で新しくなった機能・変わった点の technical overview です。

Near Field Communication (NFC)

Android 2.3.3 では、改善・拡張された NFC サポートを提供します。これによりアプリケーションはより多くのタイプのタグと新しい方法でインタラクトできます。

より広い範囲の標準タグテクノロジーに read / write access する新しい包括的な API セットが提供されます。
これには以下が含まれます。
  ・NFC-A (ISO 14443-3A)
  ・NFC-B (ISO 14443-3B)
  ・NFC-F (JIS 6319-4)
  ・NFC-V (ISO 15693)
  ・ISO-DEP (ISO 14443-4)
  ・Mifare Classic
  ・Mifare Ultralight
  ・NFC Forum NDEF tags

さらに、platform は限定的なP2P接続プロトコル (limited peer-to-peer communication protocol) と API を提供します。前面の Activity は API を使って NDEF message を登録することができ、登録した message は他のデバイスが接続されたときに push されます。

進化した tag 発行 (dispatching) は、NFC tag が見つかったときに、どのように・いつそれが発行されたかのより多くのコントロールをアプリケーションに提供します。以前の platform では、tag が見つかったことを知らせるのに single-step の intent 発行を使っていました。 今回から platform は、タグイベントのコントロールが他のアプリケーションへパスされる前に、前面のアプリケーションがそれをとれるように four-step process を使います (android.nfc.NfcAdapter.enableForegroundDispatch())。新しい発行プロセス (dispatch process) では、 2 つの新しい intent actions - android.nfc.action.NDEF_DISCOVERED and android.nfc.action.TECH_DISCOVERED を使うことで、アプリケーションが特定のタグコンテンツやタグテクノロジーを listen することができます。

NFC API は android.nfcandroid.nfc.tech packages で利用できます。
鍵となるクラスは

NfcAdapter : デバイス上のNFCのハードウェアを表す

NdefMessage : NDEF データメッセージを表す。デバイスとタグ間で標準形式の "records" でデータを転送する。NDEF メッセージは異なるタイプの多くの NDEF records を特定する。アプリケーションはこれらのメッセージを NDEF_DISCOVERED, TECH_DISCOVERED, or TAG_DISCOVERED Intents から受信できる

NdefRecord : NdefMessage 内で運ばれる。自身に含まれるデータのタイプを記述する

Tag : デバイスによってスキャンされたタグを表す。タグテクノロジーに基づいて、複数のタイプのタグをサポートしている

TagTechnology : タグプロパティへのアクセスおよび I/O操作をアプリケーションに与えるためのインタフェース。Android 2.3.3 でサポートされている全ての tag technology リストは android.nfc.tech を見てください。

NFC接続はデバイスハードウェアのワイヤレステクノロジーに依存しています。そのため、全ての Android デバイスで提供されているわけではありません。NFC をサポートしていない Android デバイスでは、getDefaultAdapter(Context) は null object を返します。そして、context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC) は false を返します。 ハードウェアがサポートしてるかに関わらず、NFC API は常に存在します。

NFC API を使うには、アプリケーションは permission をリクエストしなければなりません。<uses-permission android:name="android.permission.NFC"> を manifest ファイルに定義してください。

加えて、開発者は Android Market で NFC がサポートされていないデバイスで見つからないようにフィルタリングをリクエストできます。フィルタリングをリクエストするには <uses-feature android:name="android.hardware.nfc" android:required="true"> をマニフェストに定義してください。

NFC の sample code は NFCDemo app, filtering by tag technology, using foreground dispatch, and foreground NDEF push (P2P) をみてください。


Bluetooth

Android 2.3.3 で Blutooth の nonsecure socket connection をサポートする API が platform に追加されました。これにより、アプリケーションは UI での認証を依頼することなく、単純なデバイスと接続することができます。より詳しい情報は createInsecureRfcommSocketToServiceRecord(java.util.UUID)listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID) を見てください。


Graphics

・新しく BitmapRegionDecoder クラスが追加されました。これによりアプリケーションは画像の矩形領域をデコードすることができます。この API は オリジナル画像が大きく、アプリケーションがその一部だけ必要な場合にとても便利です。

BitmapFactory.Options クラスに新しく inPreferQualityOverSpeed フィールドが追加されました。これにより、アプリケーションはJPEG デコードに、より正確だが少し遅い IDCT メソッドを 使えます。再構成された画像のクオリティを改善することに使えます。


Media framework

・新しく MediaMetadataRetriever が追加されました。これにより frame と metadata を入力メディアファイルから受け取る単一のインタフェースが提供されます。

MediaRecorder.AudioEncoderMediaRecorder.OutputFormat は AMR Wideband と AAC フォーマットを指定するための新しいフィールドを含みます。


Speech recognition

speech-recognition API (音声認識API) は音声検索の結果を新しい方法で管理するための、新しい定数を含みます。新しい定数は通常の音声認識の使用では必要ありませんが、これは、音声検索の結果をアプリケーションの異なる View に提供することができます。この情報については RecognizerResultsIntent を見てください。



 

0 件のコメント:

コメントを投稿