昨年、多くの観察者は、Apple がいつ iPhone で Adob​​e Flash サポートを提供するのか疑問に思っていました。火曜日の同社の株主総会で、スティーブ・ジョブズ氏は、Flash自体のアーキテクチャ上の制限のせいでサポートがすぐには提供されないことを示唆するコメントを述べた。これらの制限については、以下で詳しく説明します。

なぜフラッシュなのか?

iPhone のモバイル Safari ブラウザは、デスクトップに似たエクスペリエンスを提供しますが、ほとんどのユーザーにとって欠落している主な残りの要素は、Web デザイナーが Web サイトにインタラクティブなアプレットを追加するために一般的に使用するソフトウェアである Flash に関連しています。 Adobe の Flash は、Web ページ上にインタラクティブなアニメーション要素を表示するための自己完結型の環境として機能します。

Flash の最も一般的な用途は、宣伝されている製品に注意を引くために、動く猿をクリックしたり、敵と戦ったりするようにユーザーを誘導するバナー広告です。 Flash は、ビデオ クリップを Web ページに埋め込むための最小公倍数にもなり、Web 開発者がユーザーにプラグインのインストールを強制することなく、どのシステムでも動作するビデオ クリップを簡単に提示できるようになりました。

ほとんどの Web ユーザーは必要なプラグインをすでにインストールしているため、Flash は正常に動作します。 Adobe は Microsoft の Windows と Apple の Mac OS X の両方とバンドル契約を結んでいます。Flash がプリインストールされていないユーザーは無料でダウンロードでき、現在 Adob​​e は Linux バージョンのプラグインも提供しています。

iPhoneのフラッシュ

技術的にあまり関心のない専門家は、iPhone が PDF ドキュメントや Microsoft Word および Excel ファイルの表示をサポートするのと同様に、デスクトップ コンピュータで使用されているプラ​​グインと同じように機能する iPhone 用の Flash プラグインを Apple がリリースすると予想しています。問題は、Flash ランタイムがデスクトップ コンピューター以外で動作するように設計されていないことです。デスクトップ コンピューターでは、処理能力にほぼ無制限にアクセスでき、バッテリーの使用量、使用可能な RAM、または熱放散に関する制約がほとんどありません。

iPhone はまったく異なる製品です。これはラップトップのバッテリーの数分の一のサイズで、Flash を実行できる Mac や PC で使用される Intel Core または PowerPC プロセッサとは異なる低電力の組み込み ARM プロセッサを使用します。 iPhone 用の Flash プラグインを開発するには、Adobe 独自のソフトウェアを ARM アーキテクチャ用に再コンパイルして最適化する必要がありますが、これは Apple が Adob​​e から独立して簡単に実行できることではありません。

フラッシュに関するさらなる問題

ただし、さらに重大な問題は他にもあります。通常、デスクトップコンピュータはあらゆるプロセスをフル稼働で実行できますが、iPhone のプロセッサは小さくて遅いだけでなく、はるかに効率的に電力を使用するように設計されており、電力を節約し、熱を制限するために不要なときはサイクルダウンします。完全に実行されているプロセッサが生成するものです。

iPhone の OS X 環境は、NVRAM に保存された比較的小さなディスク イメージから実行するように設計されています。 Adobe の Flash は、消費されるディスク容量や RAM の量にほとんど制限がないデスクトップ マシンで実行できるように設計されています。簡単にメモリをリークし、洗練された iPhone アプリが本来使用する予定よりも多くの RAM を消費する可能性があります。

たとえ Adob​​e が、老朽化し​​た Flash 環境を ARM にきれいに移植した iPhone 用の独自の Flash プラグインを提供できたとしても、電力とメモリの消費量を最適化し、熱放散を管理するために必要な作業により、プラグインは大部分の Flash Web アプレットを実行できなくなるでしょう。デスクトップコンピュータで動作するように設計されています。これは、Vista 用に特別に設計されたソフトウェアのみを実行する Windows エミュレータのようなものです。大多数のユーザーは、まだ利用できない新しく開発されたアプレットのサブセットだけでなく、Web 上にあるすべての古いコードを実行するバージョンの Flash を望んでいます。

大きな可能性

Apple の iPhone 開発ガイドラインを常に監視してきた開発者にとって、これらのことは驚くべきことではありません。昨年1月、ジョブズ氏はiPhoneはSunのJavaをサポートせずに出荷されるだろうと述べたが、Flashのサポートについては「かもしれない」という言葉を使って疑問符を残した。

それから 6 月下旬の iPhone の登場までの間に、Apple は Google と協力して YouTube ビデオ ライブラリを、Web ページから実行するように設計された Flash ベースのプレーヤーから、ISO 標準である MPEG 4 H をダウンロードするカスタム iPhone インターフェイスに移行する作業を開始しました。 Google のサーバーからの 264 本のビデオ。 H.264 は、Sony の Blu-Ray ディスクから Apple の iTunes、x264 などのオープン ソース ライブラリに至るまで、あらゆるもので使用されているのと同じ標準ビデオ形式です。

この動きは明らかに、Web ビデオを配信するためのコンテナとしての iPhone の Flash の必要性を大幅に削減するための取り組みでした。 iPhone が出荷されると、H.264 YouTube プレーヤーの登場と Flash サポートの欠如により、Flash が今後登場する可能性について大きなヒントが得られましたが、iPhone での Flash サポートを否定する証拠は増え続けました。

開発者の皆様: Flash は使用しないでください

に記載されているように、あっという間に過ぎた: Apple の iPhone Web プランの詳細6 月に公開された Apple 開発者向けドキュメント「iPhone 向けの Web アプリケーションとコンテンツの最適化」では、iPhone Web 開発者に多くの推奨事項が示されていましたが、Flash プラグインの迅速な登場についての楽観的な見方は正確には伝わりませんでした。 iPhone 上の Flash について 4 つの興味深い言及がありました。

  • 「ユーザーに Flash のダウンロードを求める JavaScript アラートを表示しないでください。Flash はサポートされておらず、ダウンロードもサポートされていません。」
  • 「iPhone の Safari は Java アプレット、Flash、プラグインのインストールをサポートしていません」
  • Apple は「サポートされていないテクノロジー」のセクションに、Flash というテクノロジーを 1 つ挙げています。
  • 「iPhone のコンテンツに Flash と Java を使用することは避けた方がよいでしょう。また、iPhone の Safari では Flash もダウンロードもサポートされていないため、ユーザーに最新の Flash を iPhone にダウンロードするよう促すことも避ける必要があります。」

このガイドラインは開発者に「Flash の既存の省略に対処する」ように指示するだけでなく、よりオープンな代替手段の使用を開始することを提案しました。開発者に「標準に従う」ことを積極的に奨励し、iPhone での CSS、JavaScript、Ajax を推奨しました。 「ウェブは常に進化しており、進化するのと同じようにSafariも進化するだろう」と報告書は述べている。 「WHATWG や W3C 標準化団体から発せられる進化する標準について常に最新の情報を入手しておくとよいでしょう。」

Apple もメンバーである WHATWG は、特に Web ハイパーテキスト アプリケーション テクノロジを開発する標準作業グループです。これは、Adobe 独自の Flash、Flex、AIR、または直接 Flash を対象とする Microsoft の競合製品である Silverlight の使用に代わるものです。

Apple が iPhone Web アプリを構築する開発者向けにリストしたその他の制限事項では、JavaScript でのポーリングの使用が禁止されています。 10 MB を超える非ストリーミング メディア、画像、HTML、またはスクリプトのダウンロードの使用。 5 秒以上続く JavaScript の実行。マウスオーバー イベントの使用 (クリックやホバー マウスではなくタッチ スクリーンを使用することによって生じる制限)。ファイルのアップロードとダウンロードを含むユーザーの対話。

これらの制限はすべて、仮想の Adob​​e Flash iPhone 環境にも適用されるため、その環境を iPhone に移植するという Adob​​e の作業は非常に困難になります。マウスオーバー、ダウンロード、イベント ループを多用する既存の Flash アプレットを実行するという現実的な要件は、iPhone 上で使用可能な Flash を単純に不可能にしてしまいます。

トンネルの先にある Flash Lite

Adobe が完全な Flash ランタイムを他の携帯電話に移植する試みから距離を置いたことは注目に値します。代わりに、同社は、基本的な電話インターフェイスの設計に使用できる対話性のユーザー インターフェイス層を提供するように設計された簡素化されたスクリプト ランタイムである Flash Lite を開発しました。 Flash Lite は Web サイトにある Flash コンテンツを実行しないため、iPhone ユーザーにとっては価値がありません。

Apple の携帯電話には、Cocoa と呼ばれる実際のデスクトップ スタイルのアプリケーションを構築するためのはるかに洗練された開発環境がすでに搭載されています。 Flash Lite が実際に役立つのは、販売する携帯電話に標準化されたグラフィックのレイヤーを追加して、すべての携帯電話に一貫したブランドを付けたいと考えているモバイル サービス プロバイダーだけです。

ジョブズ氏が火曜日の株主総会で、Flash Liteは「Webでは使用できない」と述べたのはこのためだ。これは単に Web プラグイン技術ではなく、ジョブズ氏によれば、iPhone では「動作が遅すぎて役に立たない」デスクトップ コンピュータの Flash と一時的な関係にあるだけです。

真ん中の欠品商品。

「真ん中に欠けている製品がある」とジョブズ氏は続けたが、AppleがiPhone用に提供している開発者向けドキュメントに基づくと、AppleがAdobeがこの欠けている製品を開発するのを息をひそめて待っているわけではないことは明らかだ。

既存のデスクトップ Flash アプレットとの互換性は、モバイル デバイス、特に iPhone のような非常にバッテリ効率の高い ARM ユニットには適合しないため、この欠落した製品が存在する可能性は低いです。これは実際には問題ではありません。Flash は、Flash プラグインがすでにインストールされているデスクトップ ユーザーにとっては Web アプレットを開発する便利な方法ですが、iPhone ユーザーにとっては、Flash Web ビデオ クリップ、点滅する広告バナーについては、Flash アプレットを使用しているサイトの Flash アプレット サイトをご覧ください。

Apple は、この 3 つすべてにもっと良い代替手段があると主張しています。同社は標準の H.264 ビデオの使用を推進しており、WHATWG と HTML 5.0 をパートナーの Firefox と Opera (そしてますます Microsoft) とともに標準ベースの Web アプリケーションの将来の開発を提唱し、JavaScript を含むオープン スタンダードを中心とした Ajax テクノロジを使用しています。そして今のCSS。実際、Apple は企業 Web サイトから Flash の痕跡をほぼすべて削除しました。

Apple は、Flash のオープンな代替案を提示するために多くのことを行ってきたため、同社が Adob​​e が iPhone 向けに許容可能な Flash ランタイムを移植することに賭けているだけでなく、Apple が iPhone の Web を優先していることを示唆しているようです。ブラウザは Adob​​e にまったく依存していません。