7月24日に新しいNexus 7が発表された。これに合わせアンドロイドのバージョンが上がり「Android 4.3」となった。ただし、4.3は、Jelly Beansであり、マイナーリリースという位置づけとなる。すでにJelly Beansは、4.2でマイナーリリースとなっているため、今回の4.3は、Jelly Beans MR2となる。なお、本記事では、新しいNexus 7のみをさす場合「Nexus 7(2013)」と表記し、従来のNexus 7を「Nexus 7(2012)」と表記して区別することにする。

Android 4.3の一番の目的は、このNexus 7(2013)への対応だが、従来のNexus 7(2012)を含めたNexusシリーズも、4.3へのアップデートが開始された。なお、アップデートは、

  • Nexus 7(2012)
  • Nexus 10
  • Nexus 4
  • Galaxy Nexus

の4機種である。OTAによるシステムアップデートを待つか、グーグルのサイトからFactory Imagesをダウンロードして自分でアップデートすることも可能だ。

アンドロイドのバージョンアップには、ユーザーに直接見える改良点と、ユーザーには直接見えないAPIの強化点がある。なお、4.3では、APIレベルが18になっており、APIの追加機能もある。

目に見える強化点だが、ハードウェアに依存する部分もあるため、4.3にアップデートしたからといってすべての機能が利用できるようになるわけではない。たとえば、電話アプリのテンキーパッドの強化点は、通話機能があるスマートフォンでしか見ることができない。

さて、目に見える強化点のうちハードウェアに依存しないものには、以下のようなものがある。

  • Wi-Fiによる位置情報取得機能の強化
  • 制限付きユーザー
  • ユーザー切替の高速化
  • 規制情報の電子表示
  • 「設定」→「アプリ」に「無効」タブが追加
  • スクリーンセーバーのアルバム選択機能
  • 対応言語の追加

Wi-Fiによる位置情報取得機能は、Wi-Fiをオフにしていても、システムが短時間、Wi-Fiのアクセスポイントをスキャンし位置情報を更新し続けるというもの。こうした「場所」に応じた機能については、Googleは、地域ごとのクーポンアプリである「Google オファー」なども開発しており、力をいれていることがわかる。今回の改良は、タブレットなどのWi-Fiモデルなどで位置情報を使いやすくするためのものと思われる(スマートフォンは基地局情報から位置を確定できる)。具体的には「Wi-Fi scan-only mode」というモードが追加されて、位置情報取得のためなどにアクセスポイントのスキャンだけを行わせることが可能になった。

もう1つは、4.2で搭載されたマルチユーザー機能の強化である。マルチユーザー機能は、1つのタブレットを複数のユーザーで共有するためのもの。ただし、4.2では、かなりオマケ的な感じのある機能だっだ。

4.3では、新規に登録したユーザーに対して、アプリ個別に利用の可、不可を設定でき、一部の設定項目にもロックをかけることができる。たとえば、子供にタブレットを貸すといった場合などに利用が可能だが、学校などでの利用を考えているのかもしれない。

「規制情報の電子表示」は、従来筐体に表示していた各国の規制に準拠していることを示すマークなどを電子的に表示する機能だ。国内ならば、「技術基準適合証明」や「技術基準適合認定」などの技適マークやVCCI(情報処理装置等電波障害自主規制協議会)マークなどを画面に表示することが可能になる。ただし、Nexus 7の3GモデルにAndroid 4.3をFactory Imageからインストールしてみたが、VCCIマークはあったが、いわゆる技適マークの表示はなかった。なお、Nexus 7(2012)は、本体背面にシールが貼ってあるのででは問題はない。

そのほかの機能は、少し細かくなる。まず、「設定」→「アプリ」に、「無効」タブが増えた。これまでも「アプリ」で、標準組み込みのアプリを「無効」に設定することができたが、アプリが「無効」になっているかどうかは、個々のアプリのページを開かないとわからなかった。「無効」タブは、ユーザーが無効と設定したアプリのリストを表示するものだ。ただし、無効にしたアプリがないとタブそのものが表示されない。

スクリーンセーバーのアルバム選択機能は、「ディスプレイ」→「スクリーンセーバー」にある「フォトテーブル」や「フォトフレーム」の設定の強化だ。4.2では、ギャラリーにあるアルバムのみ表示していたが、4.3ではローカルフォルダも対象として表示できるようになった。

「設定」→「タブレット情報」。ビルド番号はJWR66V

「設定」→「ユーザー」では、新規のユーザーとして、通常のユーザーと制限付きユーザーのどちらかを指定できる

制限付きユーザーを作ったとき、アプリごとに利用の可否を設定できる

規制情報の電子表示。国内向けのVCCIマークはあるが、技適マークは表示されていなかった

「設定」→「アプリ」に「無効」タブが追加され、無効に設定されたらアプリの一覧を表示できる

なお、4.3では、表示や入力パフォーマンスの向上といった部分もある。改良点としては、2D描画の最適化や文字、図形描画の効率化といった強化点がある。また、タッチキーボードのアルゴリズム変更により、テキスト入力が容易になっているという。おそらく押されたキーの判定アルゴリズムを改良し、誤打鍵を減らしているのではないかと推測される。また、ゲームパッドやジョイスティックからの入力遅延を短縮しているという。

ハードウェアに依存する新機能としては、以下のようなものがある。

  • BLuetooth 4.0 SmartReady
  • Bluetooth AVRCP 1.3対応
  • バーチャルサラウンド機能
  • ダイヤルパッドの強化
  • Hardware geofencing

Bluetooth SmartReady対応については、以前に解説したのでここでは省略するが、Nexus 7(2013)やNexus 4は、SmartReadyとなるようだ。なお、Nexus 7(2012)は、4.3にアップデートしてもSmartReady対応にはならない。

AVRCP 1.3対応とは、BluetoothのAV機器リモート制御のプロファイルであるAVRCPがバージョン1.3に対応したことで、これは、ディスプレイを持つBluetoothステレオヘッドホンなどに曲名などを表示する機能だ。

「geofencing」とは、あらかじめ設定した一定の範囲内にデバイスが入ったかを検出するもので、「Hardware geofencing」とは、これをハードウェアで行うことを意味する。位置の検出などにはGPSや無線LANアクセスポイント、モバイルネットワーク基地局などを利用するが、GPSを利用するような場合、ソフトウェアでこれを行うと、常に位置を把握し続け、指定範囲内かどうかを判定することになるため、システムに対する負荷が非常に高くなってしまう。モバイルデバイスでは、これはバッテリの消費につながり、あまり好ましいものではない。これをハードウェア化することで、CPUがスリープ状態の間も指定範囲内にデバイスがはいったどうかを低消費電力で判定することが可能になる。この機能は、こうしたハードウェアを装備するための基本的な機能をアンドロイドに組み込んだということであろう。なお、Nexus 4とNexus 7(2013)は、この機能に対応しているという。

実は、現在のGoogle Nowにはリマインダー機能があり、そこで、場所を指定し、その近辺にあるときに通知を行う機能がある(ただし、言語を英語にしていないと設定することができない)。これを使えば、たとえば自宅や会社などに到着したときにユーザーになんらかの通知をするといったことが可能になる。

API関連の機能は、対応するアプリがない限り直接ユーザーが見ることはできない強化点だ。APIの変更点は多数あるが、主なものは、以下のようなものだ。

  • OpenGL ES 3.0
  • modular DRM framework
  • SELinuxカーネルの採用

この中で一番大きな改良点は、OpenGL ES 3.0への対応だろう。なお、これまでの4.2では、OpenGL ES 2.0に対応していた。OpenGLは、3Dグラフィックス描画機能を規格化したもの。3.0になることで、動作効率があがり、また、強化された機能が利用できるようになる。OpenGL ESは、OpenGLの組み込み機器向けのサブセットとして定義されており、OpenGL自体は、すでに4.4までバージョンが上がっている。このOpenGL ES 3.0は、OpenGLと同じテクスチャ圧縮機能を備えるため、テクスチャーデータを実装プラットフォーム向けに作り分ける必要がなくなっているなどのメリットもあるという。

「modular DRM framework」は、DRM(著作権管理機能)を組み込み可能にするための枠組みである。これにより、コンテンツ管理者は、独自のDRM機能を組み込んでメディア再生を行わせることが可能になるという。

SELinuxは、米国のNSAが開発したLinuxカーネルの拡張モジュールで、Linuxのカーネルに高いセキュリティ機能を付加するもの。Linux 2.6カーネルから利用が可能になっている。SELinuxを使うことで、プロセスとアクセスされるリソースに対して、細かくアクセス制御を行い、ユーザーに対しても必要最小限のアクセス権限を付与することが可能になる。標準的なLinuxでは、root権限を取得すれば、なんでも可能になってしまうが、SElinuxを使うことで、制限を付けることが可能になる。現時点では、SELinuxをどのように利用するのかなどは公開されていないが、セキュリティ上重要な部分をroot権限などからも保護するような場合に使われるのではないかと思われる。

ざっと見た感じ、Nexus 7や4が装備しているハードウェアへの対応を進めたという感じが強いが、APIを見ると比較的大きな強化が内部的に行われているようだ。

本稿は、2013年8月2日にAndorid情報のWeb専門誌「AndroWire」に掲載した記事を再構成したものです。