Android 4.0 の概要 – Android 4.0 Platform

LinkedInでAndroid4.0のチュートリアルや電子ブックを探しているという
質問について、Android 4.0 Platform(Androidデベロッパーのサイト)が紹介されていたので読んでみました。
ざっと斜め読みなので、不正確な表現があると思います。
あらかじめご了承願います。

  • Social APIs in Contacts Provider
    ソーシャルアプリで知り合いを招待する場合などに使われるユーザのプロフィール情報や
    ソーシャルネットワークに招待する際のInviteインテント
    コンタクトの写真が大きくなった(96×96 -> 256×256)
    コンタクト利用のフィードバック。電話番号やメールアドレスの使用頻度など。
  • Calendar Provider
    カレンダー、イベント、出席、リマインダー、アラートなどの追加・修正・削除
    READ_CALENDARやWRITE_CALENDARのパーミッションが必要など。
    Eventインテントを利用してカレンダーへのイベントの追加などができます。
  • Voicemail Provider
    電話(音声通話機能)によるボイスメール、VoIPやその他の音声サービスをまとめて扱えます。
    これまでは、サードパーティーがシステムからボイスメールを読むことが許可されていなかった。
  • Multimedia
    写真、映像、音楽を使ったインタラクティブなアプリのためのAPIなど。
    Media Effects、Remote control client、Media player、
    追加されたMedia types。詳しくはこちら。
  • Camera
    顔認識APIに対応。顔や物体の検出だけではなく、目や口による認証など。
    機種によって対応していないものもある。getMaxNumDetectedFaces()によって確認するなど。
    フォーカスやホワイトバランス、自動露出の測定のエリア指定。
    continuous auto focusing。写真を撮る際の連続的なオートフォーカス。
    ビデオ記録中の写真撮影。自動露出やホワイトバランスのロック機能。
    カメラプレビュー時の縦横の切り替え。
    新しい写真や映像を撮影したときのブロードキャスト
  • Android Beam (NDEF Push with NFC)
    新しいNFCの機能。NDEFメッセージを他の端末に送ることができる。
    だいたい4cm程度なので、端末同士を背中合わせにくっつけるなど。
    コンタクトの共有、YouTubeの映像やブラウザのURLの共有など。
  • Wi-Fi Direct
    ホットスポットやインターネット接続がない場合の端末同士によるpeer-to-peer接続。
  • Bluetooth Health Devices
    心拍数、血圧、体温など、Bluetoothに対応した健康機器との通信。
  • Accessibility
    Explore-by-touch mode。画面のタッチやドラッグによる操作を音声で説明する機能。
    現在利用できるアクセシビリティサービスの情報提供。
    Explore-by-touch modeが有効になっているかどうか。
  • Spell Checker Services
    BIND_TEXT_SERVICE のパーミッション および、
    <action android:name=”android.service.textservice.SpellCheckerService” />
    が必要。
    スペルチェッカーサービスのサンプルソースなど。
  • Text-to-speech Engines
    text-to-speech (TTS) APIが大幅に拡張され、アプリからのTTS enginesの利用が簡単になりました。
    setEngineByPackageName()メソッドが廃止となり、TextToSpeech コンストラクタでTTS engineの
    名前を指定することができます。
  • Network Usage
    アプリのネットワークの使用状況を視覚的に詳細に提供します。

  • RenderScript
    RenderScriptに3つの機能が追加されました。
    Off-screen rendering to a framebuffer object
    Rendering inside a view
    RS for each from the framework APIs
  • Enterprise
    エンタープライズアプリのための次のような機能拡張が行われました。
    VPN services
    Device policies(カメラを無効にするなど)
    Certificate management(新しいKeyChainクラスによるアクセス証明の管理など)
  • Device Sensors
    新しい温度、湿度のセンサータイプを追加。
  • Action Bar
    あらゆる画面サイズで適切な操作性を提供するため、アクションバーのサイズや設定が
    柔軟に調整できるようになりました。
  • User Interface and Views
    新しいviewやUIコンポーネントを提供。
    GridLayout、TextureView、Switch widget、Popup menus、
    Preferences、System themes、Options menu button、
    Controls for system UI visibility
  • Input Framework
    ViewクラスがHover eventsに対応。マウスでスクリーン上のカーソルを操作するなど。
    デジタイザやスタイラス可能なタッチスクリーンなど、スタイラス入力に対応。
  • Properties
    新しいPropertyクラスにより、すばやく簡単にターゲットの値の読み書きができます。
  • Hardware Acceleration
    targetSdkVersion または minSdkVersion を “14”以上にすることで、
    アニメーションやスクロールがスムーズに。操作のレスポンスが向上。
    必要に応じてアクセラレーション機能を停止したり、View毎に無効にすることも可能。
  • JNI Changes
    これまでのAndroidでは、JNI local referencesは間接のハンドルではなく直接のポインタを使っており、
    バギーコードになってしまう可能性があったため、これを間接の参照とすることでこのような問題を
    検出できるようにした。
    JNI Tips(詳細記事)
  • WebKit
    WebKitのバージョンアップ(534.30)
    Indicフォント(Devanagari, Bengali, and Tamil, …)のサポート
    Ethiopic, Georgian, and Armenianフォントのサポート
    WebDriverのサポート(Introducing WebDriver)
    Android Browserの機能追加
  • Permissions
    パーミッションを追加。
    ADD_VOICEMAIL、BIND_TEXT_SERVICE、BIND_VPN_SERVICE、
    READ_PROFILE、WRITE_PROFILE
  • Device Features
    Device Featuresの追加。
    FEATURE_WIFI_DIRECT