Mozilla Japan ブログ

Mozilla、Firefox、Firefox OS、Thunderbird の最新情報をお伝えします

個別記事アーカイブ

Firefox の更新体験を改善するために - サイレントアップデートを実現する 5 つの変更点

Mozilla では過去数か月間、Firefox の「更新体験」を改善するため様々な取り組みを行ってきました。ユーザがブラウジングを中断することなく無意識のうちに更新を行えるようにする、いわゆる「サイレントアップデート」の仕組みを Firefox へ取り入れることにしたのです。

この記事では、その中から 5 つの変更点を取り上げ、それらがどのように Firefox ユーザの更新体験を改善するかについて説明したいと思います。

バックグラウンドでの更新

Firefox は更新の有無を定期的に確認しています。更新が見つかると、Firefox は自動的にそれをダウンロードして、インストールを行うために再起動されるのを待ちます。起動中はロックされている可能性のある構成ファイルに変更を加える必要があるため、更新は次回起動時にインストールされます。このため、Firefox を再起動すると画面が開くまで少し時間がかかります。その間にこのような進捗バーが表示されるのを目にしたことがあるかもしれません。

Firefox の更新進捗バー

新しい Firefox では、インストール方法を見直すことで、起動中に更新をインストールできるようにします。更新はダウンロードが終わった直後にインストールされます。適用を完了するにはこれまで通り Firefox の再起動が必要ですが、この新たな方法によって更新の適用が非常に素早く行われるようになります。実際とても速いので、おそらく気付くこともないでしょう。この時点で更新作業は既に完了しているため、次回 Firefox を起動すると待ち時間なく新バージョンの画面が開きます。

バックグラウンドでの更新は、今後数バージョン以内に投入する予定です。その後の Firefox の更新では、再起動時に進捗バーが表示されなくなります。

この変更に関する技術的な詳細については、Ehsan Akhgari のブログ記事 (英語) をご覧ください。

更新通知ダイアログ

Firefox の更新には多くの場合セキュリティ問題の修正が含まれています。お使いのパソコン環境を守るため、更新が公開されたらすぐに適用することが大切です。上で書いた通り、適用を完了するには Firefox の再起動が必要となります。適用を促すため、更新がダウンロードされてから 12 時間以内に Firefox が再起動されなかった場合、ダイアログによる通知が表示されて再起動を求められます。

更新通知ダイアログ

ところが、私たちが行った調査の結果を調べたところ、Firefox ユーザの 99% 以上が、通知が表示されなくても 24 時間以内に再起動を行っていることが分かりました。そこで、通知が表示されるまでの時間を延ばしても影響は少ないと考え、昨年 11 月に設定を 24 時間へ変更しました。

これによって、ほとんどのユーザは通知が表示される前に Firefox を再起動することになり、上のような「更新をインストールする準備が完了しました」というダイアログを見ることもなくなるでしょう。

Windows UAC サービス

Windows Vista と Windows 7 では、Firefox を更新する際、ユーザー アカウント制御 (UAC) ダイアログによる確認が行われます。このダイアログは Windows のセキュリティ機構のひとつで、明示的に権限を与えられたアプリケーションだけが、Program Files ディレクトリへの書き込みなど、システム上の制限された場所へ変更を加えられるようにする仕組みです。

ユーザー アカウント制御 (UAC) ダイアログ

現在の Firefox ソフトウェアアップデータの構造では、それらのシステム上で更新をインストールするたびに、アップデータに許可を与える必要があります。このダイアログが毎回表示されるのには 2 つの理由があります。それは、Firefox 本体が Program Files ディレクトリ内にあること、そして、更新時にレジストリの変更が行われることです。ユーザの視点に立てば、ダイアログが毎回表示される必要はないはずです。なぜなら、最初にダイアログが表示されて許可を与えた際に、ユーザ自身が Firefox への信頼を示しているからです。一度 Firefox に更新の許可を与えたら、それ以降は再度ダイアログを見ることなく新バージョンへ更新し続けられるべきでしょう。

UAC のセキュリティ機構に対応しつつ更新のたびにダイアログを表示しないようにするため、新しい更新サービスをまもなく Aurora (プレベータ版 Firefox) へ投入します。このサービスはバックグラウンドプロセスとして実行され、更新が見つかったらインストールを行います。一度その更新サービスに許可を与えたら、それ以降更新時に UAC ダイアログは表示されません。

興味のある方は、Brian Bondy のブログ記事 (英語) に載っている、この Windows 向けの変更に関する詳しい技術解説を読んでみてください。私たちは、Mac 版と Linux 版の更新手順についても改良の余地がないか検討を進めています。

アドオンの互換性改善

アドオンは、Firefox を使うにあたっての大きなメリットのひとつです。ユーザはインストールしたアドオンに依存しており、いつでも必要なときに使えることを求めています。私たちは歴史的に、アドオンの互換性について保守的な姿勢を取ってきました。Firefox を更新した後で、アドオンがユーザのブラウジングに予期せぬ影響を及ぼす可能性を最小限に留めるため、このような方針を採用してきたのです。そのため、新バージョンの公開日には、まだ未対応のアドオンが少なからずあるという状況でした。そうしたアドオンが Firefox にインストールされていた場合、更新のダウンロード前に「互換性のないアドオン」というダイアログが表示されます。

互換性のないアドオンダイアログ

アドオン作者はこれまで、自分のアドオンが Firefox の新バージョンへ対応していることを明示する必要がありました。Mozilla の公式サイトに登録されているアドオンについては、条件を満たせば自動的に対応バージョンを更新する措置 を取っていました。しかし、そもそもほとんどのアドオンは、新バージョンへ対応する変更を行わなくても問題なく使い続けられるのです。

そのため Firefox の最新版 では、旧バージョンに対応していたアドオンは基本的に新バージョンにも対応しているとみなすようにしました。ただし、バイナリコンポーネントを含むもの、Firefox 4 以降のバージョンに対応していないもの、Mozilla 側で互換性がないと判断したものなど一部のアドオンは、従来通り作者が修正を行うか対応バージョンを書き換えるまで非対応として扱います。

この変更によって、リリース当日から新バージョンに対応して使えるアドオンが増え、ユーザにとっても作者にとっても更新が楽になったはずです。また、Firefox の更新がダウンロードされる前に「互換性のないアドオン」のダイアログを目にする機会も減ると思います。

アドオン更新システムの変更点について詳しく知りたい方は、Blair McBride のブログ記事 (英語) を読むと良いでしょう。

更新完了ページ

更新完了ページ

Firefox の更新が完了すると、ブラウザ内にこのような更新完了ページが表示されます。このページでは、更新が問題なく完了したことをお知らせするとともに、最新版での変更点などを紹介していました。このページを表示するかどうかをバージョンごとに Mozilla 側で決められるよう、Firefox 8 で更新システムを変更しました。今後は基本的に表示せず、皆さんにお伝えしたい製品の新機能や Mozilla に関する最新情報がある場合のみ表示します。

この記事で紹介した 5 つの変更を行うことで、Firefox のサイレントアップデートを実現します。これによってユーザの皆さんは、新機能が追加され安全性も向上した最新版を常に使い続けられるようになります。

[これは米国 Mozilla のブログ記事 Improving the Firefox update experience の抄訳です]

前後の記事

前の記事: 新しい開発ツールとアドオン同期機能を追加した Firefox の最新ベータ版をテスト用に公開しました
次の記事: Mozilla Japan のイベントスケジュール (2012年2月)