非常に高度な検索システム
ユーザログインシステムによる機能拡張
検索機能は、興味がある特定の話題に関する手掛かりを見つけるときに特に便利です。
例えば、特定の人物からの投稿やadobe
comなどのドメインを検索できます。
これは、特定のコミュニティに対象を絞ったデスクトップアプリケーションの非常に優れた例で、従来のデスクトップアプリケーション構築環境で構築するには莫大な費用がかかったでしょう
また、このアプリケーションの特長の1つとして、広告用コンポーネントがユーザインタフェースに見栄えよく組み込まれていることが挙げられます。Adobe AIRデベロッパはより高度なアプリケーションを構築し続けているので、定期購読や広告などのビジネスモデルをどのようにサポートしていくのかが楽しみです。Widgetの調査や管理を行うyourminisアプリケーションなど、他にもお勧めしたいアプリケーションがたくさんあります。開発中のアプリケーションや、公式に発表されていないアプリケーションも、コミュニティに常に新しい刺激をもたらしていると確信しています。
著者について
興味分野には、Webテクノロジ、天文学、映画、旅行がある他、彼個人のブログで新しいテクノロジと設計プロセスを紹介しています。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
クロスドメインポリシーファイルの仕様
この文献はクロスドメインポリシーファイルの構造と使用法を示すリファレンスです。これらの情報は、デベロッパーおよびコンテンツプロバイダが自らの管理下にあるアプリケーションやサーバにおいて、ポリシーファイルに定められた規則を遵守するために使用できます。
ポリシーファイルの提供
ドメインの照合
次のステップ
クライアントが、ある特定のソースドメインからコンテンツを受け取り、このコンテンツが他のドメインにリクエストを送るような場合、クライアントが適切に処理を行うには、リモートドメインにソースドメインからのアクセスを許可するクロスドメインポリシーファイルが配置されている必要があります。ポリシーファイルでは、データの読み取りアクセスに対して許可を付与できるだけでなく、クライアントからのクロスドメインリクエストにカスタムヘッダを含めることの許可も付与することができます。また、ポリシーファイルはソケットでの使用にも対応でき、ソケットベースの接続に許可を付与することもできます。ソケット接続で使用する場合、ポリシーファイルは同一ドメインでの接続と、ドメイン間での接続の両方で使用することができます。ポリシーファイルが必要とされる場面では、クライアントはこの位置をデフォルトで参照します。なお、この体裁で保存されるポリシーファイルのことを、マスターポリシーファイルと呼びます。次に示すのは、制限が緩いURL(つまり、非ソケット向けの)マスターポリシーファイルの典型例です。ここではsite-control要素によって、本マスターポリシーファイルのみが、このドメインで有効なものであると判断されるべきことが規定されています。直後のallow-access-from要素では、他のいかなるドメインから供給されたコンテンツでも、 現在のドメイン(つまり、このポリシーファイルが保存されたドメイン)上に存在する、あらゆるデータにアクセスできることが規定されています。ドキュメントの構造を記述したものがスキーマです。以下に、このDTDを示します。これは、どの環境で用いられるかによって、ポリシーファイルに若干の違いがあるからです。ポリシーファイルの種類別に用意されているすべてのスキーマを表1に示します。
ポリシーファイルのスキーマ
各要素の詳細は、この節に詳しく解説されています。ポリシーファイル定義のコンテナとして機能するこの要素自体には、クロスドメインポリシーの詳細を定義する属性は含まれていません。以下に示すのは、マスターポリシーファイルの定義として最も制限が厳しいものです。このメタポリシーの場合、当該ポリシーファイルを含むすべてのポリシーファイルによる、あらゆる種類・ドメインへの権限付与が制限されます。
一方、以下に示すのは、マスターポリシーファイルの定義として最も制限が緩やかなものです(使用を避けることを強く推奨します)
ここでは、当該ドメインのサーバ上に定義されたあらゆるポリシーファイルが、あらゆる許可を付与したり、サーバ上のあらゆるファイルへのアクセスと当該サーバへのあらゆるヘッダの送信を許可することができます。しかも、これらの操作はすべて、ソースがHTTPであっても、HTTPSで処理することが許可されています。次に示すポリシーファイルは、ソケット接続を経由してクライアントに供給されるソケットベースのポリシーの例です。[マスターポリシーファイルのみ] site-control要素では現在のドメインのメタポリシーが定義できます。
メタポリシーは、クライアントがドメインのマスターポリシーファイル(crossdomain
xmlの名でドメインルートに配置されたポリシーファイル)以外のポリシーファイルを使用しなければならない場面で、ドメイン上のどのポリシーファイルの使用を許可するかを決定します。
クライアントがマスターポリシーファイル以外の位置にあるポリシーファイルの使用を指示された場合、当該クライアントは、まずマスターポリシーファイルのメタポリシーを参照し、所定のポリシーファイルの使用が許可されていることを確認する必要があります(図1参照)
メタポリシーを確認するためにマスターポリシーファイルを参照
(拡大表示するには画像をクリック)
メタポリシーの詳細を定義できます。ここでは値として、以下のいずれかが使用できます。none:マスターポリシーファイル自身を含め、サーバ上のいかなる位置であってもポリシーファイルを一切許可しない。
all:当該ドメイン上のすべてのポリシーファイルを許可
ポリシーファイルのデフォルト値は、ソケットポリシーファイルのデフォルトがallであることを除き、すべてmaster-onlyに設定されます。次に示すポリシーファイルは、それ自体、当該ドメインでのデータアクセスを許可はしないものの、このドメイン上の他のポリシーファイルに、アクセスがどのように処理されるかの判断を許可するメタポリシーが定義されています。したがって、このドメインの権限に関しては、クライアントはマスター以外のポリシーファイルを読み込む必要があります。次の例では、このマスターポリシーファイルのみを当該ドメインの有効なポリシーとして機能させることを指示する、メタポリシーが定義されています。com とそのすべてのサブドメインによるデータアクセスが許可されています。allow-access-from要素では、他のドメインからのアクセスに対して、当該ドメインのデータの読み取りを許可するかどうかが指定できます。クライアントによっては、クロスドメインデータのデータ形式に基づいてデータの処理動作が変化するものがあります。
テキストおよびその他の非ビジュアルなデータに関しては、クライアントがリモートドメインからデータを読み込めるかについて、ポリシーファイルを利用して規定することができます(図2参照)
データの読み込み処理に必要なポリシーファイル
(拡大表示するには画像をクリック)
一方、一部のデータ(画像やその他のビジュアルデータ)は、ソースコンテンツに当該データ固有の情報が決して達し得ない場合に限り、ポリシーファイルの許可なしでもリモートドメインから読み込めることがあります。仮に、当該コンテンツがリモートデータについての情報をリクエストした場合、この操作を認めるかについてはポリシーファイルが確認されます。
データのアクセス時に必要なポリシーファイル
(拡大表示するには画像をクリック)
アクセスを認めるドメインを指定します。値としては、ドメイン名とIPアドレスのいずれでも指定可能です。サブドメインは別のドメインとして扱われます。
ワイルドカード文字(*)を使用することができ、ワイルドカードを単独で使用した場合はすべてのドメインが対象になり、ワイルドカードをピリオド()で区切られた、第2レベルの明示的なドメイン名の前に接頭辞として使用する場合は、複数のドメイン(サブドメイン)を対象にできます。これについて詳しくは、付録A:ドメインの照合の節を参照してください。[ソケットのみ] ソケット接続に対して接続を許可する、ポートの範囲またはカンマで区切られたポートのリストを指定します。ポートの範囲を指定する場合は、2つのポート番号間にダッシュ(-)を記述します。ポート範囲は、個別のポート番号とカンマで区切って記述することも可能です。すべてのポートに許可を与えたい場合は、単一のワイルドカード(*)を使用することができます。[HTTPSおよびソケットのみ:オプション項目] 値をfalseに設定した場合、HTTPSポリシーファイルが、HTTPのソースから送られたリクエストに対しても許可を与えられるようになります。URLポリシーファイルのデフォルトはtrueに設定されており、HTTPSソースに対する許可のみが与えられます。falseを使用することは推奨されません。ソケットポリシーファイルにはデフォルトでfalseが設定されます。メモ:allow-access-from要素をマスターポリシーファイル以外に含めた場合は、対象ディレクトリおよびそのサブディレクトリに配置されたデータにのみ、他のドメインからのアクセスを許可することができます。対象ディレクトリより上のレベルにあるディレクトリへのアクセスは許可できません。このポリシーの場合、すべての他のドメインからの、対象ドメイン上のファイルへのアクセスが許可されます。これは、たとえHTTPのソースがHTTPS経由でドメイン上のデータにアクセスする場合にも適用されます。com からのアクセスを許可するためのものです。ここではルートドメインを指定するにあたり、サブドメインの www を含めないケースと含めるケースの両方の記述例が含まれています。次に示すのはソケットポリシーファイルの例です。com またはそのサブドメインのコンテンツが、ポート507および516以上523以下経由でアクセスすることが許可されます。allow-access-from要素が対象ドメインからのプル型データ配信を許可する一方、このタグでは(ヘッダを利用することによって)データのプッシュ配信を許可することができます。
ヘッダの送信時に必要なポリシーファイル
(拡大表示するには画像をクリック)
アクセスを認めるドメインを指定できます。値としては、ドメイン名とIPアドレスのいずれでも指定可能です。サブドメインは別のドメインとして扱われます。
ワイルドカード文字(*)を使用することができ、ワイルドカードを単独で使用した場合はすべてのドメインが対象になり、ワイルドカードをピリオド()で区切られた、第2レベルの明示的なドメイン名の前に接頭辞として使用する場合は、複数のドメイン(サブドメイン)を対象にできます。これについて詳しくは、付録A:ドメインの照合の節を参照してください。許可を受けたドメインが送信できるヘッダを、カンマで区切られたリスト方式で記述します。ワイルドカード(*)を使用することもでき、この場合はあらゆるヘッダの送信が許可されます。また、ヘッダの接頭辞を指定することで、所定の接頭辞文字から始まり、他の文字で終了するヘッダの送信を許可することも可能です。デフォルト設定はHTTPSソースのみに許可を与えるtrueです。falseを使用することは推奨されません。メモ: allow-http-request-headers-from要素をマスターポリシーファイル以外に記述した場合は、 当該ポリシーファイルが定義されたディレクトリおよびそのサブディレクトリにあるページに対してのみ、所定のヘッダの送信を許可することができます。次の例では、あらゆるドメインによる、対象ドメインへのSOAPActionヘッダの送信が許可されます。com から送られるものが、対象ドメインで許可されます。
この例の場合、リクエストが foo
policy-file-request要素は、ポリシーファイルドキュメントで使用するものではなく、クライアントがソケットサーバからポリシーファイル情報をリクエストする際に用いられる、単一ノードで構成されたXMLドキュメントのルート要素です。ソケットサーバは、このドキュメントを受け取った後、クライアントに対して必要なポリシーファイルを提供する必要があります。このポリシーファイルに定義された許可によって、クライアントが接続を継続できるか、閉じるかが判断されます。このデータを受け取ったソケット接続は、ポリシーファイルを返す必要があります。
接続の許可、不許可は、返されたポリシーファイルの定義によって判断されます(図5参照)
ソケット接続を使用するケースでのポリシーファイル
(拡大表示するには画像をクリック)
ソケット接続用のポリシーファイルは、必ずソケット用として使用するようにしてください。HTTPソースからのURLポリシーファイルを、ソケット接続への許可付与に使用することは避けるようにしてください。
ポリシーファイルの提供
コンテンツタイプとしては、以下を利用することも許可されています。ポリシーファイルが必要とされる場合、クライアントはポリシーファイルを見つけるために、このデフォルト位置をチェックします。メタポリシーが遵守されるよう、ドメインには必ずマスターポリシーファイルを配置しておくことが推奨されます。たとえマスターポリシーファイル以外のポリシーファイルの読み込みがクライアントに指示されている場合でも、クライアントはマスターポリシーファイルをチェックし、このファイルに定義されたメタポリシー(site-control要素で指定)が、リクエストしたポリシーファイルの使用を許可するかを確認する必要があります。マスターポリシーファイルが用意されていない場合、デフォルト動作が遵守されるかはクライアント次第になります。マスター以外のポリシーファイルは、自らが配置されたディレクトリまたはそのサブディレクトリにあるデータへのアクセスのみを制御することができます。
付録A:ドメインの照合
ドメイン名の場合、第1レベルのドメイン名(例: www
ドメイン名の場合、第2レベルのドメイン名(例: www
第2レベルのドメイン名のサブドメイン(例: www
com の wwwの部分)、およびサブドメインなしで用いられるドメインは、それぞれ単独のドメインとして扱われます。ワイルドカード文字(*)がサブドメインとして用いられている場合、サブドメインなしで用いられるドメインも一致と判断されます。ワイルドカードが単独またはサブドメインの代わりとして用いられていない場合、当該ドメインは無効になります。たとえIPアドレスとドメイン名が同じホストを参照していても、IPアドレスとドメイン名は照合できません。クロスドメインでの転送は許可されず、仮にこれを使用してもドメインは無効として扱われます。ドメインの照合例について詳しくは、表2を参照してください。
不一致と判断
ドメインが無効なため、一致なし
ただし、ポリシーファイルの一部の機能は、より新しいバージョンのPlayerから実装されています(表3参照)
ソケット向けのポリシーファイル
サブドメインを個別のドメインとして扱う、完全なドメイン照合規則の適用
HTTPのみでホスティングできるソケット用ポリシーファイル(URLポリシーファイル)
次のステップ
Adobe Flash Playerによるクロスドメインポリシーファイルの扱いについては、他にもさまざまな情報が提供されています。以下の関連リソースには、Flash Playerとポリシーファイルが関係する問題のデバッグ方法やベストプラクティスなどが記されています。
ソケットポリシーファイルを提供するサーバの設定方法*
著者について
この記事は、アドビ システムズ社の著作物です。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
サービスおよびこれらのサービスを利用するクライアントサイドアプリケーションの開発を促進する方法を説明します。初めてのRIAとして単純なユーザ管理アプリケーションを作成する手順を紹介します。データベースとのやり取りを行う上で、ストアードプロシージャの使用がいかにセキュリティとパフォーマンスの両面で優位であるかを紹介します。
伝(つて) まち・ひと・もの アーカイブプロジェクト
「伝(つて) まち・ひと・もの アーカイブプロジェクト」は、中部学院大学短期大学部経営情報学科による「地域人の育成を目指す」取り組みの一つとして立ち上げられたwebサイトです。今までで最もユーザーの方々の声を反映したリリース、ColdFusion MX 7のホットな最新機能の概要を紹介します。このコンテンツを視聴するには Flash が必要です。Webページの印刷には困難がつきまといがちですが、最新のcfdocumentタグを利用すれば期待通りの印刷結果が得られます。ColdFusion MX 7新搭載のレポートウィザードを利用すれば、インタラクティブかつ視覚的、しかも魅力的なレポートが素早く作成できます。Charlie Arehartが、コーディング技法に関する十分な情報に基づいたより的確な意思決定を行うために、サーバーモニタを使用する方法について説明します。
パート1:開発でのサーバーモニタの使用*
パート2:本番でのサーバーモニタの使用*
パート3:警告とスナップショットによる自動モニタリングと要求管理*
パート4:マルチサーバーモニタ、管理APIのモニタリングなどについて*
ColdFusionアプリケーションの作成を開始するには、次の手順に従います。マルチメディアによる概要の紹介、チュートリアル、サンプルアプリケーション、およびコードスニペットを利用して、スムーズに学習を開始できます。初めてのデータベースに接続*し、結果をページに表示*します。データベースに接続し、データベースのクエリーを実行してページに表示することによって、簡単な「hello world」アプリケーションを作成します。
データベースの概要
データベースへの接続*
データベースデータのWebページへの表示*
コンポーネントの概要
CFCがどのようにオブジェクトの力を発揮するか、および、CFMLの簡便性について説明します。このリファレンスブックで、すべてのColdFusionタグのシンタックスを検索できます。このセクションを使用して、CFML関数を学習できます。ColdFusionソフトウェアの更新、ソフトウェア開発キット(SDK)、関連するソフトウェアおよびダウンロードをAdobe Labsからダウンロードし、デザインおよび開発作業のレベルを一段階引き上げることができます。
体験版のダウンロード
開発者ツール、サーバーアドオン、および以前のバージョンは、ColdFusionサポートセンターから入手できます。ColdFusion開発コミュニティでは、開発に関する知識を共有し、他のデベロッパーが何を作っているのかを確かめ、コーディングに関する質問をすることができます。
主なコミュニティ:
これから始められる方はもとより今もずっとColdFusionを利用していたという方にも有益な情報をタイムリーにお伝えし、ColdFusionデベロッパーの拡大と、ナレッジ/スキルの向上を目指す、日本唯一のアドビ公認ColdFusionユーザコミュニティです。
不定期ですが、オフラインでの勉強会も開催中
既存のオープンソースプロジェクトや新しいオープンソースプロジェクトを、単純な関数とオプションを含む中央レポジトリに統合できるようになりました。このサイトは、ツール、地理的条件、および機能上のチームを超越した統合ホスティング環境を提供し、より効率的な時間とリソースの使用を実現します。
お住まいの地域にColdFusionユーザグループがない場合は、ユーザグループに申し込んで開始してみましょう
それは、グループ専用のアクティブなWebサイトを持っていること、および毎月ユーザグループのミーティングを開催することです。お住まいの地域でColdFusionユーザグループを開始する場合は、次の手順で申し込みます。申し込み書*に必要事項を書き込みます。ユーザグループのサイトの作成を開始し、1回目のミーティングを計画します。詳しくは、このプログラムの担当者であるEd Sullivan宛て(英文のみ)に電子メールでお問い合わせください。アドビコミュニティエキスパートを探す/アドビコミュニティエキスパートになる。
アドビ コミュニティエキスパートプログラムについて*
アドビ コミュニティエキスパートを探す*
トレーニングの機会
開発者の認定*
インストラクターの指導によるコース
次のステップ
アドビRSSフィードについて*
製品間の連携*
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
ユーザインタフェースを作成するための新しいAjaxコントロール
データ操作のための新しいAjaxコントロール
AJAXアプリケーションは、次の基本的な要素で構成されます。
アプリケーションの表示とフォーマット化のためのHTMLおよびCSS
クライアント側の動作に関するスクリプトを作成するためのJavaScript
XMLまたはJSONは、データを転送するためのフォーマットとして使用されます。
サーバ側コンポーネント(今後の記事で説明)
Ajaxテクノロジを使用してWebアプリケーションを構築した経験がすでにあるユーザは、これらの新しいタグを使用することによって、アプリケーションをさらに簡単かつ効率的に構築できるようになります。Ajaxを使用したことがないユーザは、よりリッチなアプリケーションを作成する手始めとして、これらの新機能を使用できます。
新しいタグの仕組みに触れる前に、新たに追加されたColdFusionタグ、およびAjax機能に対応するようになった既存のColdFusionタグについて簡単にご説明しましょう
以下のタグを使用すると、Ajaxユーザインタフェースをすばやくレイアウトできます。
タブ付き表示
CFPOD:画面上にタイトルバー付きのポッドを作成します。タイトルバーにはラベルを指定できます。ポップアップウィンドウとして機能し、スクリプトを使用して表示と非表示を切り替えることが可能です。CFMENU:使いやすいこのタグによって、横方向または縦方向のメニューを作成できます。CFTOOLTIP:このタグを使用すると、アプリケーションでツールヒントを簡単に作成し、ユーザにとっての操作性を高めることができます。HTMLフォーマットをツールヒントに適用して、外観を向上させることもできます。このプロキシは、CFC呼び出しから返された値をJSONフォーマットにシリアル化します。CFINPUT:以前からあったタグですが、オートサジェストと呼ばれる便利な新機能が追加されました。オプションのスタティックリストをプログラミングするか、CFCにオートサジェスト属性をバインドすることによって、データソースからデータ候補を取得できます。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
サンプルレポートの作成
クエリービルダーを利用してレポート用のクエリーを作成
レポートの書式設定
レポートの呼び出し
印刷用に表示
レポートに関する作業ほど、デベロッパーが頻繁に様々な問題と直面することはないでしょう
これまで Macromedia ColdFusion デベロッパーは、レポートを作成し、これらをアプリケーションへ容易に統合しようとする場合、限られた選択肢しかありませんでした。ColdFusion の使いやすさを犠牲にしてサードパーティー製ソリューションを利用するか、あるいは、データベースからのデータ取得、データの整形、HTML での出力の生成というように大量の CFML コードを記述して HTML のレイアウトを生成しなければなりませんでした。このような手法には細かな作業や繰り返し作業が多く、決して楽しみながらできる作業とはいえません。しかも、努力を重ねても最終的な結果に満足できないことがよくあります。HTML には改ページ、ページのヘッダー / フッターといった概念がありません。したがって、ブラウザからプリンタにレポートを出力しても、満足のいく結果はめったに得られません。ColdFusion 7 には、これらの作業からデベロッパーを解放することが可能な、最新のレポート機能を用意しています。この機能を利用すれば、完成した動的アプリケーションが綺麗に印刷できるかを心配する代わりに、より多くの時間をアプリケーションそのものの開発に費やせるようになります。
この記事に必要なもの
このチュートリアルをご利用いただくには、つぎに挙げるソフトウェアやファイルをインストールする必要があります。メモ: ZIP ファイルにはこの記事で紹介するレポート作成に必要なサンプルファイルが含まれています。また、ColdFusion MX 7 のインストール時にサンプルアプリケーションをインストールしていない場合は、再度インストーラーを実行し、インストール手順にある [サンプルアプリケーション] のオプションを選択してください。
この記事のために必要な予備知識
著者について
ビデオゲームの開発を含めたゲーム好き
妻や 3 人の子供と時間を過ごすことを楽しんでいる。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
伝(つて) まち・ひと・もの アーカイブプロジェクト | デベロッパーセンター
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
伝(つて) まち・ひと・もの アーカイブプロジェクト
「伝(つて) まち・ひと・もの アーカイブプロジェクト」は、中部学院大学短期大学部経営情報学科による「地域人の育成を目指す」取り組みの一つとして立ち上げられたwebサイトです。地域人とは、生まれ育った地域で学び、働き、地域を愛する人材を指す造語ですが、こうした人材を育成する手段の一つとして「伝(つて)」は制作されました。若者(学生)が、地方の魅力をありのままの姿で、そこに暮らす人の視点で発信・表現するための手段として、本コンテンツでは写真投稿サイトの体裁をとることになりました。写真を通して、人々の暮らしをリアルに伝えるとともに、思いもかけない情報との出会いの場を演出することを意図しています。この思いもかけない情報との出会いの演出のために、「伝(つて)」では、インターフェースに工夫を凝らしました。具体的には、目的の写真に加え、タグで関連づけられた情報が次々に表示されるという仕組みを提供するというものです。この記事では、以下のソフトウェアを使用しています。
技術の選択について
タグにより関連づけられた写真(情報)が次々に表示される仕組みを実現するにあたり、早い段階からいくつかの技術的な課題があがっていました。
思いがけない情報との出会いを楽しみながら、次々と「写真を見てしまう」しかけを提供するためには、写真(サムネイル)にマウスを乗せるたびに実行されるタグ検索のパフォーマンスの実現
検索結果であるサムネイルの表示パフォーマンスの実現
が必要となります。CF8 で新たに実装されたイメージまわりの機能、AS3 で実現されるパフォーマンス、AMF3 によるバイナリ通信は上記の課題を解決するための最適な組み合わせとなるのではないかいう結論に至ったからです。以下、詳細についてご紹介をさせて頂きます。伝(つて)プロジェクトの開発をスタートした時期は、ちょうどColdFusion8日本語版発売のタイミングでした。CF8 は RIA バックエンド開発のための機能強化を始め、多くの新機能が実装され、これまで以上に生産性を高めるソリューションになりました。今回のコンテンツで利用した主な機能は次のようなものです。伝(つて)プロジェクトでは、Flashからポストされた画像を CF8 で受け取り、サーバのストレージへ保存する際に、投稿写真一覧用のサムネイル画像をサーバサイドで自動生成する機能のため、CF8 の新機能のひとつであるイメージ操作機能を使用しました。
今回使った機能は、イメージの情報取得機能
Webルート外のイメージファイルの表示機能
イメージのサイズ変更機能
イメージ変換後の保存機能
など4つ程度でしたが、CF8 にはイメージ操作に関する 50 以上もの機能が用意されているため、今後予定されている機能追加にも短期間で応えられると考えています。前バージョンまでは、イメージを操作するためには、別途サードパーティのモジュールを利用して実装する必要がありましたが、CF8 がイメージまわりの多彩な機能を実装したことは、開発スピードや効率のうえで大きなアドバンテージになると感じています。この管理画面を使うことで、CF8 のほとんどの設定を Web ブラウザ上で行うことができます。そのひとつにタスクスケジュールの設定管理機能があります。タスクスケジュール機能では、開発した CFM ファイルをバックグラウンドで実行する時間や頻度を詳細に設定できます。伝(つて)では、PC からの投稿の他に、携帯電話で撮影した写真ファイルを添付したメールを、エントリー用メールアドレス宛に送信する事でエントリーを受け付けるサービスを用意しています。このタスクスケジューリングを利用して、サーバサイドで受信メールを解析し、エントリー処理を行うファイルを用意するといった処理を定期的に実行しています。こうした設定がWebブラウザ上で簡単に設定できるのも、CF8の 魅力のひとつです。また、エントリー処理だけではなく、ファイルのクリーンアップ処理などもスケジュールタスクで実行しています。Flash では直接データベースとデータ通信を行うことはできないため、CF8 を経由してデータ通信を行っています。DB との連携の際には、AMF3 によるバイナリ通信を取り入れたため、通信と描画の両方で高いパフォーマンスを得ることができました。このパフォーマンスについては、次のユーザインタフェースの項でさらに詳しくご紹介いたします。伝(つて)のメインユーザーインターフェースでは写真につけられたタグをもとに縦横に次々に展開していきます。基本的には同一のタグを持つ写真をデータベースから抽出し、表示するというシンプルなものです。しかし、気持ちよく展開し続けるためには通信も含めたパフォーマンスがとても重要になってきます。表示の度に待たされるようでは、インターフェースとしてはとても成り立たないと当初から懸念されていました。
AMFによるバイナリ通信
今回採用したインタフェースでは、サーバとの通信スピードに加え、ブラウザでの描画までのレスポンスが求められます。バイナリ通信により、データのやりとりに XML が介在しないため、Flash 側で XML のパースが必要ないというのが描画処理を行うまでの処理としては、大きなメリットとなります。例えば、Flash 側で表示したり、ソートしたりするために必要なデータはこれこれです。というと、では、CF8 側には引数としてこれこれをください。というやりとりを事前のミーティングで行いました。あとは、必要な引数を用意して ColdFusion 側に送り、返ってきたデータを加工して表示するだけと、Flash 側の処理にのみ専念することができます。厳密にはエラー処理の分岐などその他の処理も必要ですが、大まかには以上の流れで、responder の result に結果のデータがすべて入ってきます。そのデータにはドットシンタックスで簡単にアクセスできますので、あとは自由に利用するだけです。開発開始当初はアクセスできない。
と焦りを感じたこともありましたが、と、result に対して内容を表示してみるとちゃんとデータが格納されていることが確認できました。あとはすべて同じ流れでサーバーとの連携が行えるので、XML を介して行うよりも非常に効率よく開発ができると感じました。
それでいてスピードも速いとなれば積極的に使っていくべきでしょう
また、今回の開発で非常に役立った機能は AS3 からサポートされた正規表現です。Flash 側でも正規表現でテキストの整合性を確認したり、置換えしたりと手軽に行えるようになりました。そのため、CF8 と分担、または二重にデータチェックをすることで不正なデータを整形したり排除して、より確実なデータベースの構築につながります。また、Flash側からサーバーへの通信を極力減らすことにも役立っています。具体的な例をひとつ紹介します。同じプログラムを書く必要がないだけでなく、メンテナンス性も向上する結果となっていると言えます。また、CFC を使えばオブジェクト指向の開発ができるため、例えば Flash 向けに構築した CFC を継承して二次利用していく事もできます。API の設計が非常に重要なため、クライアントサイドとサーバサイドの開発関係者で集まり、概要設計書を実現すべくブレストベースで行いました。その後にAPI設計書としてまとめて共有し、必要に応じて更新をしていく方法をとりました。開発手法はいくつかありますが、大きな打ち合わせはこの最初のブレストだけでスムーズに開発をする事ができましたので、最適な方法だったと考えられます。概要設計書をベースに API を定義し、ミツエーリンクスとエスアイヤそれぞれで分担範囲を切り分け、それぞれの得意分野で作業を進めることができました。ミツエーリンクスとエスアイヤでの連携開発は今回が初めてでしたが、到達すべきゴールが明確だったため、初期の技術選定の段階から効率的に開発を進めることができました。イメージ操作など、Flash コンテンツで実装することが多い機能が CF8 との連携でより高いパフォーマンスで、容易に実現できるのは、限られた開発期間の中でも大きなアドバンテージとなると確信しています。最後になりますが、実は、ラスベガスで開催された Adobe MAX 2006 でご一緒させて頂いたのが、ミツエーリンクスとエスアイヤが共同開発をするきっかけとなりました。思いもかけない素敵な出会いと、伝(つて)という素敵なコンテンツの制作の機会を与えてくださった中部学院大学短期大学部経営情報学科様に、この場をお借りして感謝の意を表したいと思います。
著者について
ミツエーリンクスの橋本氏はプロデューサー・クリエイティブディレクターとして、主にRIAコンテンツの企画・設計に従事しています。メディア・パルサーの茅原氏は、スクリプトを駆使したRIAコンテンツの実装を得意としており、新しい技術にも積極的にトライしています。エスアイヤの木戸間氏・船江氏はColdFusionのエキスパートとして、数多くの実績を残しております。今回のプロジェクトはそれぞれが得意とする分野をベースにコラボレーションが実現しました。今後も協力しあいながら、そして時には競いあいながら、RIAコンテンツの可能性を追求していきたいと考えています。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
非常に優れた性能を持つColdFusion 7が発表されてから2年以上たち、その間には様々な変化がありました。
製品に冠する社名は新しくなり、現在はアドビです(何度名前が変わったかが気になる方のために言うと、ColdFusionを保有する会社は3つ目になりました)
Ajaxは、ホメロスの『イリアス』の登場人物、ソフォクレスの悲劇、オランダのサッカーチーム、家庭用洗剤として使われてきた名前ですが、この製品が次世代のWebフロントエンドを構築する画期的な新しい手段となりました。こうした新しい動きは、ColdFusion 8の新たな機能を考える上で大変重要なことでした。幸せなことに、2007年前半、当社のプレリリースユーザグループツアーの一部としてColdFusion 8を何千人もの開発者に披露することができました。プレゼンテーションやデモを準備しながら、ColdFusion 8には語りたいことがなんと多くあるのだろう、と驚きました。プレリリースユーザグループツアーの期間中、デモの内容やプレゼンテーションを慎重に選び、毎週アップデートしていました。ここでも、ColdFusion 8を構成する機能とテクノロジのハイライトについて、皆さんにご紹介したいと思います。しかし、これは改善の余地がないということではありません。
例を示しましょう
がサポートされています。
別の例を挙げましょう
配列を作成し、値を入力するとします。次に、これまでの初期化構造体を作成する方法を示します。もう1つ例を挙げます。これはCFMLで強化された機能の中でも、私が気に入っているものの1つです。タグに属性を条件付きで付加する方法はないので、それぞれ異なる属性を持つタグの複数のセットを使用することになります。
この場合の利点は何でしょうか
初心者にとっては、コードがクリーンで単純であることです。しかし、もっと重要なことは、ここに示すように、メンバを構造に条件付きで追加でき、条件付き属性を1度だけ処理する方法の問題が解決することです。これらはごくわずかの例ですが、おわかりになるように、CFMLはこれまでよりもはるかに強力になりました。もちろん、これらの強化機能はすべて必要に応じて使うものであり、以前の方法でコードを記述し続けることができます。
理由7:より多くのバックエンドへのアクセス
いろいろな意味でColdFusionはミドルウェアであり、様々なバックエンドをバインドしてそれらを活用するアプリケーションを記述できるようにする接着剤のようなものです。このような流れから、ColdFusion 8にも重要な新しい統合オプションが追加されています。
ユーザの組織で
NETクライアントであることを知れば興味を持っていただけるでしょう
これは、ローカルであってもリモートであっても、また、Windows以外のサーバからであっても、CFMLコードによって
NET CLR内で実行されているクラスまたはアセンブリを呼び出せることを意味しています。コードスニペットを以下に示します。
このコードでは
NETコードの呼び出しが非常に簡単になったということです。NETコードを同じページ内から呼び出せる唯一のプラットフォームであり、1つの結果セット内に結果を結合することもできます。これは実に強力な機能です。以下のスニペットによって、ユーザであるBenのすべてのカレンダーのエントリが取得されます。カレンダーのエントリの作成、データのフィルタリング、サブフォルダへのアクセスなども同様に簡単です。新しいCFPDFタグを使用して、PDFファイルのマージ、ページの追加または削除、パスワードによるファイル保護、PDFのフラット化、ページのサムネールの作成などができます。
この例では、レポートフォルダのすべてのPDFファイルと2つの追加のPDFファイルをnew
pdfという名前の新しいPDFファイルにマージします。次の例では、既存のPDFフォームに値を入力します。CFPDFFORMタグを使用すると、ここに示すようにフォームフィールドに入力できるだけでなく、電子的に送信したフォームから値を抽出することもできます。ここで紹介したのは注目機能の一部に過ぎません。ColdFusionの開発者が高度なPDF統合を使用できるようにする様々な属性やオプションは数多くあります。そのすべてはいくつかの簡単なタグで表されます。
理由5:帰ってきたデバッガ
しかし、ColdFusion MXに移行してインタラクティブなデバッガはなくなり、多くの開発者をがっかりさせました。さて、この度、7年間の時を経て、デバッガが帰ってきました。新しいデバッガの機能は以下のとおりです。
ブレークポイントの設定
他のブラウザから起動したアプリケーションのデバッグ
デバッガはColdFusionの一部として装備され、追加料金なしで使用できます。これらがあれば準備完了です。また、クライアント側のAjaxデバッガも追加されましたが、Ajaxについては後ですぐに説明します。
理由4:セキュリティの向上
ColdFusion 8では、管理者はユーザに自分自身のアプリケーションを管理できる権限を与えることができますが、これまでよりも厳しいセキュリティ管理が行われます。新しいセキュリティ機能には、以下のようなものがあります。ユーザは一部の管理者ツールにアクセスできますが、管理者による定義に従って、他の部分のアクセスは制限されます。
複数のRDSログイン、およびRDSログインをサンドボックスに関連付ける機能
共有環境でRDSを安全に使用できるようにします。
アプリケーションごとの設定
ColdFusion 8のリリース準備を行う中で、サードパーティのセキュリティリスクを解析する会社に依頼して製品を徹底的に解析しました。ここで、「ColdFusion 8は、新機能によって提供される機能に関して妥協することなく、アプリケーションレイヤ攻撃に対する復元力が非常に高いことを示した。」という評価を得ました。
自分たちではそんなにうまく言えませんでしたが
多くのColdFusion開発者がAjaxのサポートを要望してきましたが、その内容は次の2つの種類に分類されます。これらのアプリケーションは2つの部分に分かれます。通常、これらはJSONと呼ばれるXML形式を使用して統合され、バックエンドサーバとブラウザ間で送受信されたデータはJSONパケットとしてフォーマットされます。ColdFusionでは、JSONに対する組み込みサポートを提供することによりこのような統合を驚くほど簡単に行い、簡単な関数を使用してデータを変換できるようにし、JSONパケットとしてCFC結果を自動的にエンコーディングすることまでできます。また、ずっと簡単なことを望んでいるユーザもいます。実はこちらのほうが多数派です。このようなユーザは、Ajax型の機能をすばやく簡単に活用する手段である、Ajax型のコントロールとウィジェットを要望しています。このコードスニペットをご覧ください。データベース駆動型のauto-suggestコントロールを作成するのに必要なのはこれだけです。コントロールは通常のテキストフィールドのように見えますが、一旦ユーザが入力を開始すれば、中断があると候補のリストがポップアップ表示されます。これはAjaxコントロールではありません(データはすべてクライアント側にあるため、非同期のコールバックはありません)が、とても役に立つ例です。同じ例のAjax版を示します。問題のCFCは次のようになります。非常に簡単です。以下に、SELECTタグのコントロールに関する別の例を示します。最初のコントロールで選択が行われ、次のコントロールは関連するオプションで更新されます。ここでは2つのCFSELECTタグが使用されており、それぞれCFCメソッドにバインドされています。2番目のタグは、最初のタグが変更されるときは必ずgetArt()への呼び出しによって設定され、最初のタグの値が引数として自動的に渡されます。次に、ライブデータグリッドの例を示します。これはソートやページングなどをサポートします。ここでも、データはCFCメソッドへの非同期呼び出しを行うことによってロードされ、ページが変更されたとき、またはデータをソートし直したときにメソッドが再度呼び出されます。このテーマについては後日記事で取り上げる予定です。
理由2:強力なサーバモニタリング
ColdFusionは長い間、魔法で動く封印されたマシンであり、内部構造を決して明かさないブラックボックスでした。これがユーザにとっては問題の原因でした。
以下のようなことを考えたことがありませんか
ページの実行速度が遅い理由を知りたいと思ったことはありますか
自分のサイトのどのページまたはどの部分がサーバに最も負荷をかけているか知りたいと思ったことはありますか
最もよく使用されるものとそうではないものをキャッシュするために、データベースクエリをキャッシュする最善の方法を調べようとしたことはありますか
そうすることで原因を追究するための証拠をすべて失うとわかっていても、サーバを再起動する必要のある問題が発生したことはありますか
サーバのどのアプリケーションが最もメモリを消費するかを調べようとしたことがありますか
要求を拒否しなければならなかったことがありますか
メモリ不足のサーバ、長い実行スレッドが多すぎるサーバ、JVMが破損したフォームが欠点のサーバを処理しなければならなかったことがありますか
ご覧のように、複数インスタンスを利用するメリットは数多くあります。これらの情報はすべて、またこれ以外の情報も、新しいColdFusionサーバモニタリングによって入手できるようになりました。
1台または複数のサーバを監視でき、様々な統計や仕様をドリルダウンしそれにアクセスできます(装備されているFlexフロントエンドを使用)
また、警告を作成してサーバがそれ自身の状態を監視し問題が発生する前に対処できるようにすることもできます。これでもまだ十分でないなら、モニタリングAPIを利用して自分自身の監視フロントエンドを記述することもできます。
理由1:非常に高速であること
今までの理由がすべて不十分であったとしても、ColdFusion 8をデプロイする最も説得力のある理由の1つは、これまでよりもずっと高速であることです。ColdFusion 8では、既存のアプリケーションをコードをまったく変更しないでこれまでよりも速く実行できます。私たちは、240万行を超す顧客のCFMLのコードに対し詳しいテストを行い、コードがどのように実行され、ボトルネックがどこで発生するかを調べました。次に、当社の開発者を動員して、パフォーマンスを引き出すことに専念させました。以下の統計をご覧ください。正規表現関数の速度は2倍以上です。これらは一部の統計の一例に過ぎません。
実際にはどのような意味があるでしょうか
大部分のアプリケーションで平均して30~40%のパフォーマンスの向上が見られ、アプリケーションによってはColdFusion MX7に比べ3、4倍のパフォーマンスを示したものもあります。心配されるような中断も問題もなく、きちんと機能します。良いことはあっても悪いことはありません。これがアップグレードする理由にならないなら、私にはどんなものが理由になるのかわかりません。これは今までで最も重要で劇的なリリースであり、この重要な製品に対するAdobeの意欲の確かな証拠です。
新しい統合の機会、言語の強化、セキュリティと管理の向上、驚くような性能の向上を得るために、ColdFusion 8を使ってみてはいかがでしょうか
ColdFusion デベロッパーになるために、今ほどエキサイティングなタイミングはありません。新しいデザインになったColdFusionデベロッパーセンターで新しいリソースをご覧ください。新しいデザインのホームページ*には、ColdFusionブロガーに関する情報に遅れないようにするためのウィジェット、イベント、および最新のColdFusionに関する記事のアーカイブがあります。また、新しい記事や更新された記事などの、ColdFusion 8の使用に関する情報もすべてご参照ください。
著者について
昨今は世界中でアプリケーション開発に関するレクチャー講師、スピーカーを務めるとともに、関連書籍の執筆に多くの時間を費やす。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。デザイナー、デベロッパー、コンテンツ提供者の全員が、容易にWebサイトを管理することを可能にするパワフルな連携機能の詳細を解説します。今回は、Dreamweaverのライブラリ機能による作業効率化について解説いただきました。このFlashドキュメントには、きめ細かく定義されたAPIが含まれており、ドキュメントの表示方法をActionScriptを使用して、ある制限の下、管理することができます。Web Publishing Systemには、サイトコンテンツを作成および編集するユーザーのためだけでなく、サイトの管理者やコンテンツに携わる全てのユーザーのために有益な、多数の新機能が導入されてます。Web開発者がContribute用にテンプレートファイルを作成するにあたり、活用すると便利なテンプレート機能を、実際にサンプルファイルを作成しながらご紹介します。Contributeをカスタマイズすれば、クライアントのニーズに特化した作業環境を提供する事も可能です。[Webサイトの管理] ダイアログボックスに用意されているサイト管理者のための各種設定について解説します。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
Contribute をカスタマイズすれば、クライアントのニーズに特化した作業環境を提供する事も可能です。メニューやツールバーなどのインターフェイス、および、コマンドやオブジェクトの各種機能などは、Dreamweaver MX 同様に拡張およびカスタマイズすることが可能です。ようこそページ: Contribute を起動した際に最初に表示されるページをカスタマイズすれば、会社名や登録商標などを必要に応じて表示することができます。[操作方法] パネル: Contribute のサイドバー下部にあるこのパネルからは、基本的な操作方法の説明等が簡単に参照できるようになっています。このパネルをカスタマイズして、クライアントの会社や業界に特化した情報やガイドを参照できるようにすることも可能です。
[操作方法] パネルのカスタマイズ
エンドユーザーの利便性を考慮して、Contribute のサイドバーには [Web サイトへの接続] や [Web サイト上のページの編集] といった頻繁に発生する操作の方法を説明するセクションが用意されています。このセクションを [操作方法] パネルと呼びます。デフォルトで用意されているパネルのコンテンツは、一般的な Contribute ユーザーを対象として作成されたものなので、よりクライアントのニーズに特化した情報に変更したいと考える Web 開発者 / デザイナーの方もおられるかと思います。Contribute は非常に拡張性に富んだソフトウェアなので、[操作方法] パネルのコンテンツ自体をカスタマイズすることも可能です。
[操作方法] パネルの仕組み
[操作方法] パネルのカスタマイズを始める前に、このパネルの使用方法をエンドユーザーの立場から見てみましょう
[操作方法] パネルには、「はじめに」「Web サイトへのページの追加」「Web サイトの管理」の3つの見出し項目が表示されます。3つの見出し項目は、中に含まれているコンテンツ項目を折りたたむことができるリンクになっています。コンテンツ項目は、例えば、「Contribute チュートリアル」といったその項目名が示す作業の説明にリンクされています。コンテンツ項目を選択してみてください。選択した作業の手順が [操作方法] パネルに段階を追って表示されます。コンテンツ項目選択後、作業手順を示す項目が表示されます。コンテンツ項目選択後のパネルには、1つ前の表示に戻るための [戻る] ボタンおよび、操作方法の目次に戻るための [トピック] ボタンが用意されています。作業手順の説明には、より一層の解説を加えるために (画像やテキストが含まれた) さらなるリンクが用意されている場合もあります。上の図をクリックすると、大きな画像が表示されます。
トップレベルの見出し項目に関しては、2つの XML ファイルに表示する内容およびその構成が記述されています:
xml—見出し項目、見出し内のコンテンツ項目が記述されています。Contribute は、これらのファイルを起動時に読み込み、[操作方法] パネルに最初に表示する内容を生成します。作業手順を説明するコンテンツ項目は、それぞれ順番付けされた HTML ファイルです。htm のファイルが用意されています。ファイル名に連番を使用しなければならないわけではありません。任意のファイル名を使用することも可能です。
では、これら3タイプのファイルの詳細、およびカスタマイズ方法について見ていきましょう
拡張を容易にするため、[操作方法] パネルに表示される各種コンポーネントの基本構成は、TasksLayout
xml ファイルに集約して定義されています。言わば、この XML ファイルは構造を定義するスタイルシートのようなもので、CSS で言うセレクタとその書式設定の代わりに、テーブル要素が使用されています。
例えば、全体の構成を示す「main」要素はつぎのように記述されています:
xml ファイルに含まれている他のコンポーネント参照しています。[操作方法] パネルに表示されるはじめのページに、パネルをカスタマイズした会社名を表示させたいとします。xml ファイルを開いてください。カスタマイズした内容が [操作方法] パネルに反映されます。xml で定義した構成を使用して表示されます。
つぎに1つ目の見出し項目:「はじめに」の部分のコードを示します:
このファイルを詳しく見てみると、Contribute 起動時には3つの見出し項目しか表示されないにも関わらず、6つの <category> タグが記述してあることにお気付きになるでしょう
仮に、標準で表示される3つ目の見出し項目: [Web サイトの管理] をカスタマイズして、特定の問題が発生した場合の連絡先リンクを表示したいとします。
この場合、つぎに示す一連のコードを削除します:
代わりに、つぎのようなコードを挿入します:
これで、[操作方法]パネルにカスタマイズした見出し項目と関連コンテンツが表示されるようになりました。
見出し項目カスタマイズ後の [操作方法] パネル
最後に、新しく作成した項目用の HTML ファイルを作成します。各作業項目のファイルは、基本的に単なる HTML のページです。テーブルの上下にナビゲーション用エレメントが配置され、その間に作業の説明文が記述されている事が確認できます。通常の HTML ファイルと違うところと言えば、リンクの記述方法です。
つぎに、ページから別の作業項目ファイル (task ファイル) を呼び出すリンクのコードを示します:
htm」がその引数として渡されます。xml に定義されているトップページを表示するようになります。たいていの [操作方法] パネル内リンクは、リンク先のページを同パネル内にて表示するようになっていますが、リンク先のページを Contribute 内蔵ブラウザで表示することも可能です。必要ならばデフォルトで用意されているチュートリアルをユーザーの使用環境に特化したものに入れ替えることも可能です。カスタム作成する作業項目ページ (task ページ) のデザインは (ある一定の制限内で) 自由に設定できます。画像やその他のメディアは、Tasks フォルダ内に配置するようにしてください。ただし、[レイヤーの表示 - 非表示] といったビヘイビアをページに設定することはできません。各ページのカスタマイズ作業が完了したら、サードパーティ製のインストーラーを使用するか、手動コピーをして、ファイルを適切な場所に配置します。これで [操作方法] パネルのカスタマイズが完了です。ユーザーにとって、より一層便利な [操作方法] パネルになることは間違いありません。
著者について
講演者としても知られ、Adobe(旧Macromedia)の米国および欧州でのカンファレンスや、全米各地のユーザグループで講演を行っています。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
サイトのスタイルとレイアウトの管理
[サイト] メニューから管理する対象のサイトを選択します。ローカルハードディスクや LAN 共有以外にあるリモートサイトに接続する場合は、[ファイル] パネルの [接続] ボタンをクリックします。既に Contribute ユーザーのためのサイト設定が完了している場合は、次のメッセージが表示されます。[はい] をクリックし、次に表示される [Contribute 設定] ダイアログボックスにチェックアウト名と電子メールアドレスを入力します。リモートサイトがハードディスク上、もしくはローカルネットワークの共有フォルダにある場合は、次の手順に従います。メニューから [サイト] - [サイトの管理] を選択します。管理する対象のサイトを選択し、[編集] ボタンをクリックします。この際、Contribute 互換機能を利用するためにデザインノート、デザインノートのアップロード、チェックイン / チェックアウトの各機能を有効にする必要がある、との警告メッセージが表示されます。[OK] ボタンをクリックし、表示される [Contribute のサイト設定] ダイアログボックスにチェックアウト名と電子メールアドレスを入力します。管理者用のパスワードを入力し、[OK] をクリックします。新しいサイトに対して Contribute の管理設定を作成する手順は次の通りです。メニューから [サイト] - [サイトの管理] を選択します。[新規作成] ボタンをクリックし、ポップアップメニューから [サイト] を選択します。[詳細設定] タブをクリックします。[ローカル情報] 画面の項目に必要な情報を入力します。カテゴリの一覧から [リモート情報] を選択し、必要な情報を入力します。[ファイルのチェックイン / チェックアウト] オプションにチェックを入れます。ファイルをチェックアウトするとリモートサーバー上のファイルがロックされるので、他のユーザーが誤って同時にファイルを編集することが防げます。つまり、仮にユーザー A がファイルをチェックアウトしている間にユーザー B がそのファイルを編集しようとすると、ユーザー B のステータスバーには警告メッセージ (図 2 参照) が表示されるとともに、[ページの編集] ボタンが無効化されます。これにより、ユーザー B が誤ってページを上書きすることが未然に防げます。
ファイルのチェックアウト状態を示すステータスバーの警告メッセージ
ユーザー A がサイトにファイルを公開し、作業を終了すると (つまり、サーバーにファイルを「チェックイン」すると)、数秒後 (接続速度によって多少時間がかかる場合もあります) にユーザー B の [ページの編集] ボタンが有効化され、Contribute のブラウザからページが編集できるようになります。管理したいサイトの完全な URL を入力します。このテストに失敗する場合は、[リモート情報] カテゴリに正しいホストディレクトリやリモートフォルダへのパスが入力されていることを確認します。Web サーバーに FTP を利用して接続する場合は、[ログイン] と [パスワード] が正しく設定されていることも確認します。[サイト定義] ダイアログボックスの [Contribute でサイトを管理] ボタンをクリックすると、現時点ではサイトの Contribute 管理者が指定されていない、とのメッセージが表示され、管理者を引き受けるかが質問されます。[はい] ボタンをクリックし、Contribute 管理者になるためのパスワードと、再確認のためのパスワードを入力します。この手順が完了すると [Web サイトの管理] ダイアログボックスが開きます。なお、この記事では CPS のインストール / 設定方法を解説していません。CPS 対応サイトのイベントログを保存する方法は、次のシミュレーションで紹介しています。チェックアウト名と電子メールアドレスの入力を済ませていない場合は、他の Contribute サイトの設定同様にこれらの情報を入力します。
ユーザーと役割の作成
Contribute 3 では、ファイルアクセスの可 / 不可から入力時の文字体裁に至るまでをユーザー権限ごとに細かく規定できます。
管理設定の編集
[Web サイトの管理] ダイアログボックス (図 4 参照) の [アドミニストレーション] カテゴリでは、サイト全体に適用される管理設定が調整できます。1 つ目のオプションでは、コンテンツ提供者にサポートを提供する Web サイト管理者の連絡先電子メールアドレスが編集できます。次に、接続ウィザードで [管理者] の役割が選択された時に要求される、管理者のパスワードが編集できます。最後のオプションでは、Contribute 対応 Web サイトに適用されたすべてのユーザー、権限、サイト全体に関わる設定などの削除が指示できます。
Web サーバーの設定の編集
Web サーバーの構成やサイトの複雑度によっては、Contribute 3 にサーバー設定の追加情報を指示しなければならない場合があります。[Web アドレス]:ユーザーが Web サイトにアクセスする際に使用できる、代替アドレスが指定できます。[インデックスファイル]:Web サーバーが、Web フォルダのインデックスページとして検索するファイル名が指定できます。[防御ページ]:防御ページとは、Contribute が管理用ファイルやレビュー用の一時ページを含むフォルダに配置する Web ページのことです。html といった一般的なファイル命名慣例を利用していない場合は、適切な防御ページを入力するようメッセージが発せられます。
ページのロールバック機能を使ったコンテンツのバージョン管理
[ロールバック] カテゴリでは、Contribute ユーザーが編集した旧バージョンのページに関する管理設定が調整できます。なお、ロールバック可能なバージョン数を指定する際には、リモート Web サーバーの空きディスク容量との兼ね合いに注意する必要があります。[接続] ダイアログボックスが開いたら、[管理] ボタンをクリックします。[Web サイトの管理] ダイアログボックスが開いたら、[ロールバック] カテゴリを選択します。[ロールバックを有効にする] チェックボックスにチェックを入れ、ロールバック機能を有効化します。管理したいロールバック可能なバージョン数を入力します。[閉じる] ボタンをクリックして [Web サイトの管理] ダイアログボックスを閉じます。
新規ページの設定
まずは、[Web サイトの管理] ダイアログボックスの [新規ページ] カテゴリです。ここでは、デフォルトの文字エンコーディング (新規の空ページとサンプルページのみに適用) とファイル拡張子が指定できます。エンコーディング設定は、Web ページ上の文字に使用されるエンコーディングの指定です。もし必要なエンコーディングオプションが用意されていない場合は、[Unicode (UTF-8)] を選択して、オペレーティングシステムと同じエンコーディングを利用するページを作成するようにします。デフォルトでは、"htm" が初期設定のファイル拡張子として入力されますが、ここには Web サイトに応じて任意の拡張子が指定できます。管理者がユーザーによる新規ページ作成の詳細を調整できる 2 つ目の場所は、[Web サイトの管理] ダイアログボックスの [ユーザーと役割] カテゴリです。ここでは、ユーザーが作成できる文書の種類が指定できます。[Web サイトの管理] ダイアログボックスの [ユーザーと役割] カテゴリを選択し、[役割の設定を編集] ボタンをクリックします。["管理者" 設定の編集] ダイアログボックスが開いたら、カテゴリの一覧から [新規ページ] を選択します。[許可する項目:] のセクションでは、次のオプションが指定できます。[空白ページの作成] を選択すると、ユーザーは空白のページを作成できます。[Web サイトの任意ページをコピーして新規ページを作成] を選択すると、ユーザーは Web サイト内の既存ページのコピーを作成 / 編集できます。[このリストからページをコピーして新規ページを作成] を選択すると、ユーザーはリストに規定されたページをもとに新規ページを作成できます。[ユーザーにすべてのテンプレートを表示] を選択すると、用意されているすべてのテンプレートがユーザーに対して表示されます。[ユーザーに次のテンプレートだけを表示] を選択すると、規定されたテンプレートだけがユーザーに表示されます。どのテンプレートを表示 / 非表示にするかは、[非表示]、[表示] ボタンを利用してそれぞれの一覧に追加できます。[新規ページ] カテゴリのオプション設定が完了したら、[OK] ボタンをクリックして設定を編集中の役割に適用します。
互換性の確保
このオプションを利用することで、Contribute 3 と旧バージョンが共有する機能が正しく動作するように設定できます。カテゴリ内のオプションは次の通りです。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
Web デザイナーはコンテンツ提供者がコードを崩すことを心配する必要がなくなり、一方のコンテンツ提供者はサイトの体裁を損なえる心配なく、Web ページを編集できるようになります。
この記事に必要なもの
このチュートリアルをフォローするには、次に挙げるソフトウェアやファイルをインストールする必要があります。[サイト] メニューから管理する対象のサイトを選択します。ローカルハードディスクや LAN 共有以外にあるリモートサイトに接続する場合は、[ファイル] パネルの [接続] ボタンをクリックします。既に Contribute ユーザーのためのサイト設定が完了している場合は、次のメッセージが表示されます。[はい] をクリックし、次に表示される [Contribute 設定] ダイアログボックスにチェックアウト名と電子メールアドレスを入力します。リモートサイトがハードディスク上、もしくはローカルネットワークの共有フォルダにある場合は、次の手順に従います。メニューから [サイト] - [サイトの管理] を選択します。管理する対象のサイトを選択し、[編集] ボタンをクリックします。この際、Contribute 互換機能を利用するためにデザインノート、デザインノートのアップロード、チェックイン / チェックアウトの各機能を有効にする必要がある、との警告メッセージが表示されます。[OK] ボタンをクリックし、表示される [Contribute のサイト設定] ダイアログボックスにチェックアウト名と電子メールアドレスを入力します。管理者用のパスワードを入力し、[OK] をクリックします。新しいサイトに対して Contribute の管理設定を作成する手順は次の通りです。メニューから [サイト] - [サイトの管理] を選択します。[新規作成] ボタンをクリックし、ポップアップメニューから [サイト] を選択します。[詳細設定] タブをクリックします。[ローカル情報] 画面の項目に必要な情報を入力します。カテゴリの一覧から [リモート情報] を選択し、必要な情報を入力します。[ファイルのチェックイン / チェックアウト] オプションにチェックを入れます。ファイルをチェックアウトするとリモートサーバー上のファイルがロックされるので、他のユーザーが誤って同時にファイルを編集することが防げます。つまり、仮にユーザー A がファイルをチェックアウトしている間にユーザー B がそのファイルを編集しようとすると、ユーザー B のステータスバーには警告メッセージ (図 2 参照) が表示されるとともに、[ページの編集] ボタンが無効化されます。これにより、ユーザー B が誤ってページを上書きすることが未然に防げます。
ファイルのチェックアウト状態を示すステータスバーの警告メッセージ
ユーザー A がサイトにファイルを公開し、作業を終了すると (つまり、サーバーにファイルを「チェックイン」すると)、数秒後 (接続速度によって多少時間がかかる場合もあります) にユーザー B の [ページの編集] ボタンが有効化され、Contribute のブラウザからページが編集できるようになります。管理したいサイトの完全な URL を入力します。このテストに失敗する場合は、[リモート情報] カテゴリに正しいホストディレクトリやリモートフォルダへのパスが入力されていることを確認します。Web サーバーに FTP を利用して接続する場合は、[ログイン] と [パスワード] が正しく設定されていることも確認します。[サイト定義] ダイアログボックスの [Contribute でサイトを管理] ボタンをクリックすると、現時点ではサイトの Contribute 管理者が指定されていない、とのメッセージが表示され、管理者を引き受けるかが質問されます。[はい] ボタンをクリックし、Contribute 管理者になるためのパスワードと、再確認のためのパスワードを入力します。この手順が完了すると [Web サイトの管理] ダイアログボックスが開きます。なお、この記事では CPS のインストール / 設定方法を解説していません。CPS 対応サイトのイベントログを保存する方法は、次のシミュレーションで紹介しています。チェックアウト名と電子メールアドレスの入力を済ませていない場合は、他の Contribute サイトの設定同様にこれらの情報を入力します。
ユーザーと役割の作成
Contribute 3 では、ファイルアクセスの可 / 不可から入力時の文字体裁に至るまでをユーザー権限ごとに細かく規定できます。
管理設定の編集
[Web サイトの管理] ダイアログボックス (図 4 参照) の [アドミニストレーション] カテゴリでは、サイト全体に適用される管理設定が調整できます。1 つ目のオプションでは、コンテンツ提供者にサポートを提供する Web サイト管理者の連絡先電子メールアドレスが編集できます。次に、接続ウィザードで [管理者] の役割が選択された時に要求される、管理者のパスワードが編集できます。最後のオプションでは、Contribute 対応 Web サイトに適用されたすべてのユーザー、権限、サイト全体に関わる設定などの削除が指示できます。
Web サーバーの設定の編集
Web サーバーの構成やサイトの複雑度によっては、Contribute 3 にサーバー設定の追加情報を指示しなければならない場合があります。[Web アドレス]:ユーザーが Web サイトにアクセスする際に使用できる、代替アドレスが指定できます。[インデックスファイル]:Web サーバーが、Web フォルダのインデックスページとして検索するファイル名が指定できます。[防御ページ]:防御ページとは、Contribute が管理用ファイルやレビュー用の一時ページを含むフォルダに配置する Web ページのことです。html といった一般的なファイル命名慣例を利用していない場合は、適切な防御ページを入力するようメッセージが発せられます。
ページのロールバック機能を使ったコンテンツのバージョン管理
[ロールバック] カテゴリでは、Contribute ユーザーが編集した旧バージョンのページに関する管理設定が調整できます。なお、ロールバック可能なバージョン数を指定する際には、リモート Web サーバーの空きディスク容量との兼ね合いに注意する必要があります。[接続] ダイアログボックスが開いたら、[管理] ボタンをクリックします。[Web サイトの管理] ダイアログボックスが開いたら、[ロールバック] カテゴリを選択します。[ロールバックを有効にする] チェックボックスにチェックを入れ、ロールバック機能を有効化します。管理したいロールバック可能なバージョン数を入力します。[閉じる] ボタンをクリックして [Web サイトの管理] ダイアログボックスを閉じます。
新規ページの設定
まずは、[Web サイトの管理] ダイアログボックスの [新規ページ] カテゴリです。ここでは、デフォルトの文字エンコーディング (新規の空ページとサンプルページのみに適用) とファイル拡張子が指定できます。エンコーディング設定は、Web ページ上の文字に使用されるエンコーディングの指定です。もし必要なエンコーディングオプションが用意されていない場合は、[Unicode (UTF-8)] を選択して、オペレーティングシステムと同じエンコーディングを利用するページを作成するようにします。デフォルトでは、"htm" が初期設定のファイル拡張子として入力されますが、ここには Web サイトに応じて任意の拡張子が指定できます。管理者がユーザーによる新規ページ作成の詳細を調整できる 2 つ目の場所は、[Web サイトの管理] ダイアログボックスの [ユーザーと役割] カテゴリです。ここでは、ユーザーが作成できる文書の種類が指定できます。[Web サイトの管理] ダイアログボックスの [ユーザーと役割] カテゴリを選択し、[役割の設定を編集] ボタンをクリックします。["管理者" 設定の編集] ダイアログボックスが開いたら、カテゴリの一覧から [新規ページ] を選択します。[許可する項目:] のセクションでは、次のオプションが指定できます。[空白ページの作成] を選択すると、ユーザーは空白のページを作成できます。[Web サイトの任意ページをコピーして新規ページを作成] を選択すると、ユーザーは Web サイト内の既存ページのコピーを作成 / 編集できます。[このリストからページをコピーして新規ページを作成] を選択すると、ユーザーはリストに規定されたページをもとに新規ページを作成できます。[ユーザーにすべてのテンプレートを表示] を選択すると、用意されているすべてのテンプレートがユーザーに対して表示されます。[ユーザーに次のテンプレートだけを表示] を選択すると、規定されたテンプレートだけがユーザーに表示されます。どのテンプレートを表示 / 非表示にするかは、[非表示]、[表示] ボタンを利用してそれぞれの一覧に追加できます。[新規ページ] カテゴリのオプション設定が完了したら、[OK] ボタンをクリックして設定を編集中の役割に適用します。
互換性の確保
このオプションを利用することで、Contribute 3 と旧バージョンが共有する機能が正しく動作するように設定できます。カテゴリ内のオプションは次の通りです。
サイトのスタイルとレイアウトの管理
ユーザーやクライアントが自らのコンテンツを管理できるようになることは、Web デベロッパーにとって理想的です。しかし、これらのユーザーがサイトのスタイルやレイアウトを崩してしまうようでは話になりません。
スクリプトやフォームの保護
Web デベロッパーは、Contribute ユーザーが誤ってクライアントサイド / サーバーサイドのスクリプトやコードを削除することを防ぎたいと考えているはずです。ユーザーにこれらのコードに対する編集権限を与えたい場合は、次の手順に従います。管理者用パスワードを入力します。役割を新規作成します。[役割の設定を編集] ボタンをクリックします。[編集] カテゴリを選択します。[スクリプトとフォームを保護する] オプションのチェックを外します。[OK] ボタンをクリックして [編集の設定] ダイアログボックスを閉じます。
CSS の設定と利用可能なスタイルの制限
ただし、デベロッパーはページのレイアウト制御や、CSS-P ページを作成する際に用いられるブラウザ間の互換性のための CSS ルールを、これらのユーザーに公開したいとは考えていないはずです。そこで Contribute 3 では、役割ごとに個別のスタイルを作成し、各役割のユーザーが編集可能コンテンツに適用できるスタイルを制御することができます。ユーザーが利用できるスタイルを制限するための手順は、次の通りです。ソースの CSS ファイルから表示させたいクラスをコピーし、フィルタ用の CSS ファイルにペーストします。フィルタファイルを保存します。ソースとフィルタの両方の CSS ファイルをアップロードします。[役割] ダイアログボックスを開きます。[スタイルとフォント] カテゴリを選択します。[サポートするスタイル] ポップアップメニューから [ドキュメントレベル CSS] を選択します。以下のオプションを選択します。次の CSS ファイルに含まれている CSS スタイルのみを表示する。[選択] ボタンをクリックし、編集中の役割のユーザーが [スタイル] メニューから選択できるクラスを含めておいた、フィルタ CSS ファイルを参照します。[OK] をクリックし、変更を適用します。
デザインタイムスタイルシートの利用
Contribute 3 のデザインタイムスタイルシートは、テンプレートから生成されるページとそれ以外のどちらでもサポートされています。例えば、ドキュメントをどのように作成 / 編集すべきであるかといった追加情報を、デザインタイムスタイルシートを利用して編集モードに表示するといったことも可能です。Contribute ユーザー用のページを作成する際、デベロッパーは Dreamweaver 8 に用意されている「オプション領域」「編集可能なタグ属性」「ネストされたテンプレート」などのテンプレートツールを利用できます。Contribute ユーザーが、オプション領域や編集可能なタグ属性が含まれたテンプレートをもとに作成した新規ページを編集する際、ツールバーの下側には次のようなメッセージが表示されます。
オプション領域や編集可能なタグ属性が設定されていることを知らせるメッセージ
メッセージ内の [テンプレートのプロパティ] リンクをクリックすると、[テンプレートのプロパティ] ダイアログボックスが開きます。Contribute ユーザーは、このダイアログボックスでオブション領域の表示 / 非表示を指定したり、タグ属性を編集することができます。
テンプレートのプロパティの設定
この機能を利用することで、デベロッパーは Contribute ユーザーが既存のページを編集できるようにすることはもちろん、デベロッパーの作成したテンプレートをベースに Contribute ユーザーが新規ページを作成できるようにすることができます。これにより、たとえサイトを拡張する場合でも、デベロッパーはサイトのデザインが崩されることを心配する必要がありません。さらに、サーバーベースのログ機能や電子メール通知機能を利用してシステムの利用状況を細かく追跡することや、コンテンツをステージから一般公開へと移行する際のデプロイメントシステムとしても Contribute Publishing Server を利用できます。接続キーを利用すれば、管理者はログイン名やパスワード、サイトの構成情報などといった機密情報を公開することなく、Contribute ユーザーにサイトへの接続設定を配布できます。[接続] ダイアログボックスが開いたら、[管理] ボタンをクリックします。[Web サイトの管理] ダイアログボックスが開いたら、[ユーザーと役割] カテゴリを選択します。[接続キーを送信] ボタンをクリックすると [接続キーの送信] ウィザードが開くので、このウィザードを利用して Contribute ユーザーの Web サイトへの接続設定を定義します。(図 10 参照) この際、ユーザーごとに接続キーを作成したり、権限グループに所属するユーザー全員に対して同一の接続キーを作成することができます。
接続キーを送信するための [接続キーの送信] ウィザード
[次へ] ボタンをクリックします。[接続キーの送信] ウィザード ([接続キー情報] の画面) は、サイトの詳細情報を暗号化された XML ファイル (STC ファイルと呼ばれます) に埋め込みます。このファイルは電子メールで送信できるだけでなく、ローカルマシンやサーバーに保存し、Contribute ユーザーが各自ダウンロードして利用できるようにすることも可能です。
[接続キーの送信] ウィザードの接続キー情報入力画面
接続キーのファイルをダブルクリック
[接続キーの読み込み] ダイアログボックスでは、Contribute ユーザーの名前と電子メールアドレスを入力するよう促されます。(図 12 参照) これらの情報は、Web サイトを編集できる他のユーザーと識別するために使用され、ページが複数のユーザーによって同時編集されることを防ぎます。
[接続キーの読み込み] ダイアログボックスのユーザー情報入力画面
なお、接続キーの暗号化を解除するために、ユーザーは接続キーの暗号化時に指定された接続キーのパスワードを入力する必要があります。デベロッパーとコンテンツ提供者は、お互いのワークフローを邪魔することなく同一サイトに対する作業を進めることができます。また、デベロッパーはサイトのコード / デザインが崩されることを恐れずに、Web サイトの編集作業を一般ユーザーやクライアントに公開できます。
次のステップ
著者について
com* のオンラインチュートリアル開発業務も手掛ける。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
印刷用に表示
事実、Contribute 3 より搭載されたの新機能や改良されたCSSレンダリング機能によって、デザインの見た目と質感をこれまで以上に表現することができるようになっています。つまり、これからは、安定したコードで構築した高品質なWebページを公開することができるのです。Webサイトの見た目や質感を制御する際にスタイルシートを使用すると、その意義が十分に実感できます。それは、Contribute が CSS-P レイアウトのレンダー機能を搭載したことにより、ユーザーがアクセスできる CSS クラスをフィルタすることで、戸惑うことなくサイトのメンテナンスを実行でき、また、ほんの一握りの CSS ファイルを使用するだけで、サイトの見た目と質感を制御することができるからです。
この記事に必要なもの
編集するファイルがある Web サーバーへアクセスきること
CSS とは何か、それがどのように機能するものであるかについて理解していること
著者について
Jesse Rodgers: カナダ、オンタリオ州ウォータールー市に所在するウォータールー大学で、Web コミュニケーションズマネージャーを担当
同大学の Web スタンダードおよびサポートサイトを管理するかたわら、アクセシビリティに準ずるデザインの一部として、数年にわたり CSS/HTML の使用を啓蒙し続けている。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
文字パネルの表示
全角英数を半角英数に変換
半角カナを全角カナに変換
機種依存文字の変換
文字パネルの表示
文字パネルを表示するには、メニューの[フォーマット] - [文字パネルの表示]を選択します。表示した文字パネルからそれぞれの機能を呼び出します。変換機能は、Web ページの編集中のみに使え、ブラウズ時には単色表示となって使えません。パネルの内容がすべて表示されない場合は、パネルの右隅をドラッグして、パネルの大きさを広げて下さい。
全角英数を半角英数に変換
半角カナを全角カナに変換
ページ中に含まれる半角で記述されたカタカナを全角のカタカナに変換します。標準では全角カナに変換するようになっていますが、設定ファイルを書き換えることで、ひらがなに変更することも可能です。設定ファイルは、タブ区切りのテキストになっており、変換前<タブ>変換後のフォーマットで記述されています。
機種依存文字の変換
ページ中に含まれる Windows のみで有効な機種依存文字を、その他のプラットフォームで表示可能な文字に置き換えます変換される内容は、すべて設定ファイルに記述されています。この設定ファイルの内容を書き換えることで、別の文字に変更することも可能です。設定ファイルは、タブ区切りのテキストになっており、変換前<タブ>変換後のフォーマットで記述されています。
著者について
この記事は、アドビ システムズ社の著作物です。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
0 ドキュメントの初期設定を設定する。
(既存のレイアウトに合わせて)異なるサイズに設定するには、通常、以下に類似したコードを使用します:
// 読み込み完了を待機
このコードは、Flash ドキュメントで動作しますが、期待する結果は得られません。つまり、異様に四角形化された結果が生成されてしまいます。従って、FlashPaper ドキュメント自身に対し、リサイズの命令を発行する必要があります。
// 読み込み完了を待機
このコードではやや完全に動作します。問題は、 読み込み完了を待機 というコメントです。読み込まれる SWF ファイルの フレーム数や接続速度といった様々な要素によって、異なるフレーム数を待機する必要があるからです。0 ドキュメントでは Flash Player 6 以降の使用を必要条件としているため、このクラスを使用すると、開発を必要以上に制限してしまうことになりかねます。また、他の SWF ファイルに対しても永久的に実行されるため、使用の際は、注意を払ってください。
この場合、以下のコードを使用することができます:
ドキュメントの読み込みが完了した後に、その他の作業を実行する場合、オプションでリスナーオブジェクトを使用することもできます。
この例では、ドキュメントの最終ページまでスクロールし、ドキュメントの拡大率を 33% に変更しています:
FlashPaper ドキュメントのツールバーを変更したい場合、または様々なイベントに対するリスナーを追加する場合、 onLoaded がこれらを実施する最適な場所といえます。
以下では、印刷ボタンを隠し、現在のページとズームを監視するリスナーを追加しています:
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
ここでは無料ホームページサービス「Yahoo
ジオシティーズ」への接続方法をご紹介します。
この記事に必要なもの
ジオシティーズを利用するために必要)
このチュートリアルを完了するために、以下のソフトウェアのインストールが必要です。
30日間無償のトライアル
[ 接続を作成 ]をクリックして、接続ウィザードを表示し[ 次へ(N) ]をクリックします。ジオシティーズのホームページのURLを入力し、[ 次へ(N) ]をクリックします。ジオシティーズのサーバーと接続設定が行われます。無事接続が完了すると、ユーザー情報入力画面に切り替わります。これまで行ってきた設定の一覧がサマリーとして表示され、問題なければ[ 終了 ]をクリックします。JAPAN ID」と「パスワード」は、今後ジオシティーズでホームページを更新する際にとても重要になります。忘れずにメモをしておいてください。また、パスワードや登録メールアドレスを変更したときは「登録情報の編集」にて修正ができます。
jp/ >」の好きなカテゴリにホームページを登録し、知らない人にもホームページを見てもらいましょう
ジオシティーズではツールも提供しています。あなたのホームページファンが増えることを願っています。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
ここでは無料ホームページサービス「Yahoo
ジオシティーズ」への接続方法をご紹介します。
この記事に必要なもの
ジオシティーズを利用するために必要)
このチュートリアルを完了するために、以下のソフトウェアのインストールが必要です。
30日間無償のトライアル
2、[ 接続を作成 ]をクリックして、接続ウィザードを表示し[ 次へ(N) ]をクリックします。ジオシティーズのホームページのURLを入力し、[ 次へ(N) ]をクリックします。ジオシティーズのサーバーと接続設定が行われます。6、無事接続が完了すると、ユーザー情報入力画面に切り替わります。7、これまで行ってきた設定の一覧がサマリーとして表示され、問題なければ[ 終了 ]をクリックします。JAPAN ID」と「パスワード」は、今後ジオシティーズでホームページを更新する際にとても重要になります。忘れずにメモをしておいてください。また、パスワードや登録メールアドレスを変更したときは「登録情報の編集」にて修正ができます。
jp/ >」の好きなカテゴリにホームページを登録し、知らない人にもホームページを見てもらいましょう
ジオシティーズではツールも提供しています。あなたのホームページファンが増えることを願っています。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
接続を作成 1
接続を作成 2
接続を作成 3
接続を作成 4
接続を作成 5
接続を作成 6
接続を作成 7
印刷用に表示
※解説中に登場する「*(アスタリスク)」は、ご利用になる方に応じて変わる数字、または任意の文字列を表しています。
この記事に必要なもの
このチュートリアルを完了するために、以下のソフトウェアのインストールが必要です。
30日間無償のトライアル
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
ようこそ、さん
お問い合わせ
ホームユーザ向け写真/ビデオ編集ツール
すべての業種・ソリューション ›すべての製品 ›アドビサポートに問い合わせる。
注文状況の確認
教職員および学生
アドビについて
投資家の皆様へ*
地域・社会への貢献*
お問い合わせ
個人またはホームオフィス
法人のお客さま
教育関係のお客様
おすすめ製品
すべてのソフトウェアを見る ›
購入後について
割引価格でコスト削減
ライセンスをご利用中のお客さま
その他の購入方法
販売店のご紹介
swfファイルの容量を軽くするためのコツを紹介しましょう
最終回となる今回は実際に手を動かしてみましょう
テーマは、気楽に作れる「待ち受け時計」にしたいと思います。第2回目では、「待ち受け時計を作る」をテーマに解説する予定でしが、前回の反響が大きかったため急遽予定を変更して、仕様面に関してもう少し解説しておきたいと思います。本連載では、日本での携帯Flashコンテンツ開発について解説していきます。第1回目は、ざっくりとしたFlash Lite制作ガイドラインを記していきたいと思います。
0での外部XML駆動型のフォトギャラリーの構築
Flash Liteによるデータ管理方法、ガベージコレクションの実行方法、デバイスメモリの使用方法を理解して、効率よくモバイルコンテンツを作成します。
モバイルサイトでも CS3 情報配信中
jp)でも配信しております。詳しくは左側のカラーコードをお持ちの携帯端末で読み取ってアクセスしてください。Adobe® Device Central CS3モバイルコンテンツの制作者や開発者など、携帯電話をはじめとするモバイル機器向けコンテンツの制作現場に、高い効率と生産性、それに革新的で魅力的なコンテンツ制作をもたらします。
定期的に更新されるデバイスプロファイルライブラリ、そして他のAdobe Creative Suite® 3コンポーネントとのインテリジェントな連携により、モバイルオーサリングのワークフローをスリム化
新しいCDKを利用して開発作業を今すぐスタート
0対応モバイル&デバイス向けに軽量かつ迅速なFlashコンテンツを制作するためのテクニックやヒントがまとめられています。画面を横切るメールにキャラクターを飛ばして乗せる(添付する)ゲームを作ります。
既存のJ2MEゲームをFlash Liteプラットフォームに移植する際のベストプラクティスやテクニック、注意点などを紹介
今日のモバイルユーザを対象に、魅力的なコンテンツをデザインするうえで重要なガイドラインを紹介
クイックスタートガイドの一覧を見る。
既存のモバイルデベロッパー
関連リソースを参照してFlash Liteの開発スキルをすばやくマスター
クイックスタートガイドの一覧を見る。
ワイヤレスネットワーク経由でダウンロードできる、Flash Liteコンテンツの作成方法を紹介
1コンテンツから素早く複数のバージョンを作成
コンテンツをさまざまなデバイスに対応させるために必要となる、調整事項を紹介
クイックスタートガイドの一覧を見る。
アドビモバイル&デバイスコミュニティの他のブロッガ*
最新の対象デバイス
定期的にアップデートを実施することにより、Adobe® Flash® LiteTMを搭載した最新のモバイルデバイスのデバイスプロファイルを入手できます。モバイルを手掛けるアプリケーションデベロッパーやデザイナーが、リッチで魅力的なコンテンツ・アプリケーションだけでなく、デバイスプラットフォーム間共通のカスタムユーザインタフェースなどを制作することを可能にします。
スタートガイド(Flash デベロッパー以外の方向け)
NTTドコモ端末用のCDKをダウンロードして今すぐ開発作業をスタート
他のデベロッパーの意見を参考にして開発時の疑問を解決
KDDI端末用のCDKをダウンロードして今すぐ開発作業をスタート
他のデベロッパーの意見を参考にして開発時の疑問を解決
関連リソースを参照してFlash Liteの開発スキルをすばやくマスター
他のデベロッパーの意見を参考にして開発時の疑問を解決
ポケットPCとGPS(全地球測位システム)テクノロジを利用して、現在の所在地に特化した情報を表示するアプリケーションの作成方法を紹介
「散発的な接続」デバイス向けのアプリケーション制作*
接続性が途切れるような場合でも、常にユーザが入力したデータなどを維持することは可能です。
これを、常にオンラインへの接続がないデバイスで実現するためのクッキー使用法を紹介
Flashデベロッパーのためのスタートガイド
NTTドコモ端末用のCDKをダウンロードして今すぐ開発作業をスタート
他のデベロッパーの意見を参考にして開発時の疑問を解決
KDDI端末用のCDKをダウンロードして今すぐ開発作業をスタート
他のデベロッパーの意見を参考にして開発時の疑問を解決
関連リソースを参照してFlash Liteの開発スキルをすばやくマスター
1コンテンツから素早く複数のバージョンを作成
コンテンツをさまざまなデバイスに対応させるために必要となる、調整事項を紹介
他のデベロッパーの意見を参考にして開発時の疑問を解決
ポケットPCとGPS(全地球測位システム)テクノロジを利用して、現在の所在地に特化した情報を表示するアプリケーションの作成方法を紹介
「散発的な接続」デバイス向けのアプリケーション制作*
接続性が途切れるような場合でも、常にユーザが入力したデータなどを維持することは可能です。
これを、常にオンラインへの接続がないデバイスで実現するためのクッキー使用法を紹介
モバイル&デバイスチーム提供のものからコミュニティ提供のものに至るまで、これらのサンプルには最新コンテンツの制作方法や、既存コンテンツをFlash Player、Flash Lite対応モバイルデバイスに移植する方法などが紹介されています。ここで紹介するアプリケーションの大半はコードが公開されています。コンテンツ上で右クリックしてメニューから「View source」を選択すれば、コードを確認できるものがあります。また、以下のリンクからコミュニティメンバのサイトにアクセスして、サンプルの詳細を確認することも可能です。
永続的なデータ:ユーザの環境設定とゲームの得点の保存*
Flash Liteの共有オブジェクトを使用すれば、ゲームセッションごとにユーザ情報が失われるようなことを防止できます。
ポケットPCとGPS(全地球測位システム)テクノロジを利用して、現在の所在地に特化した情報を表示するアプリケーションの作成方法を紹介
「散発的な接続」デバイス向けのアプリケーション制作*
接続性が途切れるような場合でも、常にユーザが入力したデータなどを維持することは可能です。
これを、常にオンラインへの接続がないデバイスで実現するためのクッキー使用法を紹介
コミュニティから寄せられたサンプル
近日公開予定です。オーサリングツールのアップデートやデバイスプロファイル、コンテンツ開発キット(CDK)、さまざまなプラットフォーム用のPlayer、Adobe Labsより公開の関連ソフトウェアなどをダウンロードして、一歩先行くデザイン・開発作業をお楽しみください。
以前公開のデバイスプロファイル
オーサリングツールのアップデート
60以降*とともに提供されています。
地元および世界中のゲストが参加する講演やプレゼンテーション、デモなどを開催
ブリスベン・トゥウォングにて月例会合を実施(通常の場合、当該月最後の月曜日)
auまでメールでお問い合わせください。
世界で初めてモバイルデバイス向けFlash Liteに特化したユーザグループ
このユーザグループには、世界中から約190名ものメンバーが参加しています。
地元および世界中のゲストが参加する講演やプレゼンテーション、デモなどを開催
月に1度会合を開き、情報交換とディスカッションのためのプライベートメーリングリストを運営
comまでメールでお問い合わせください。
モバイルデバイス向けのアドビテクノロジに注目
brまでメールでお問い合わせください。インドをベースに活動するこのグループでは、世界中のデベロッパー・プロフェッショナルが手を取り合って、モバイルFlashテクノロジを盛り上げられるようにしたいと考えています。このグループではFlash Liteを中心にグループディスカッションが展開されていますが、他のモバイルテクノロジに関するディスカッションも受け付けています。月に1度の定例会合は、会場を用意して開催するか、ゲストスピーカを招待してリモート上で開催しています。comまでメールでお問い合わせください。モバイルのすべての側面を対象としつつ、Flash LiteからJ2ME、C++に至るまでのさまざまなモバイルテクノロジに注目しています。経験レベル、年齢、国籍が異なるものの、モバイルに対して同じ情熱を共有する、20名の創設スタッフメンバが所属しています。
情報交換やディスカッションのためのプライベートメーリングリストを運営し、不定期に会合を実施
itまでメールでお問い合わせください。グループのサイトでは、モバイル開発に重点を置いたチュートリアル、サンプルコード、ソフトウェアレビュー、モバイルデバイスのテストデータ、オンライン会議、ライブカンファレンス、最新ニュースなどを掲載しています。comまでメールでお問い合わせください。
アドビモバイル&デバイスコミュニティのメンバによる最新のブログ投稿を読む*
モバイル&デバイスのコミュニティディスカションフォーラムにアクセス*
お住まいの地域のイベント・セミナー情報を検索
現在、この地域にて予定されているイベントはありません。後日、このページをご確認ください。現在、この地域にて予定されているイベントはありません。後日、このページをご確認ください。現在、この地域にて予定されているイベントはありません。後日、このページをご確認ください。現在、この地域にて予定されているイベントはありません。後日、このページをご確認ください。
その他のイベント&セミナー
録音・録画済みのイベント&セミナー
0へのコンテンツの移植*
1での動的データの使用*
現在、この地域にて予定されているイベントはありません。後日、このページをご確認ください。新しいプログラムは、開発者やデザイナーの方を対象とし、セミナー、トレーニング、製品関連情報を提供いたします。会員にはグローバルなサービス、リソース、トレーニング、ツールを提供し、魅力的なコンテンツやアプリケーションをアドビのモバイルプラットフォーム用に設計、開発できるよう支援いたします。
デベロッパープログラムの特典
モバイルデベロッパーのためのテクニカルサポート
ベータソフトウェアへの初期使用
オンラインディスカッションフォーラムへの参加
どの携帯電話がどのFlash Litのバージョンをサポートしているかが分かるデバイスプロファイルの提供
サンプルやデモの提供
テクニカルな記事の提供
4半期ごとのニュースレターの提供
ユーザグループやコミュニティブロガーの紹介
イベント、ニュース、オンラインセミナーなどの情報提供
定期的にアップデートを実施することにより、Adobe® Flash® LiteTMを搭載した最新のモバイルデバイスのデバイスプロファイルを入手できます。
最新のデバイスプロファイルをダウンロード
次のステップ
Flash対応デバイスの一覧を見る。
その他のリソース
他のモバイル&デバイス関連サイト*
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
1コンテンツへの変換 | デベロッパーセンター
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
結果のプレビュー
0でコンテンツを作成
1でコンテンツを作成
印刷用に表示
1コンテンツへの変換
1を搭載しています。1用に制作されたコンテンツしか再生することができません。1用に作成する方法を見ていきます。1コンテンツに変換するテクニックについても、一般的なものをいくつか紹介します。1ではオブジェクトとアレイを使用できないため、Flashベースのアプリケーションやコンテンツを制作する際には多くの問題にぶつかります。
けれどもいざプロジェクトを開始してみると、どうしても不可能なことというのは実際にはないと気付くでしょう
問題なのはせいぜい、制作にかかる時間が多少長くなったり、コンテンツが当初考えていたものと微妙に異なってしまう場合があるということぐらいです。
ただ、コンテンツのストラクチャに手を加えて長期的に改良していくということができないので、それについては不満も当然あるでしょう
0と共存することになるでしょう
このチュートリアルを完了するには、次のソフトウェアおよびファイルがインストールされている必要があります。0について知識のあるFlashデベロッパーを対象としています。
著者について
最近では、LG社のモバイルデバイス用Flashインタフェイスおよびアプリケーションを開発
FLIVERと呼ばれる韓国で最大規模のFlashユーザグループを創設し、Flash開発に関する活発なやり取りでコミュニティをリードする。デスクトップツールとしてのFlashでの幅広い経験をモバイル分野に活かすことに力を注いでいる。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
制限ばかりで少々窮屈でしたので、最終回となる今回は実際に手を動かしてみましょう
テーマは、気楽に作れる「待ち受け時計」にしたいと思います。ダウンロードサンプルを用意していますので、合わせて読み進めてください。このQRコードから、完成サンプルをダウンロードできます。実際に壁紙としてお使いいただけます。
制作サンプルの説明:LED風の待ち受け時計
待ち受け時計の機能
最近よく見かけるLED風の時計を作ります。この時計の機能別に分解していくと、以下の機能に分けられます。こうした機能を実現するには、日付/時間/電波/電池の情報を取得する必要があり、FlashLiteには特有のコマンド「FScommand2」が用意されており、これらの情報を取得する際もこのコマンドを使います。その使い方は、後ほど解説していきます。
制作するサイズ
このサイズにしておけば、VGA端末(横480×縦640ピクセル)で再生した場合でも、2倍に拡大されて再生されるので対応できる機種が多くなります。画面サイズについて詳しい説明は第2回「Flash Liteの再生環境から見た注意点」を参照してください。今回のサンプルでは、横240×縦320ピクセルで制作していきます。
各機能の実装方法
今回のサンプルでは、上記のように5つの機能を実装します。
それでは、各機能の実装方法を解説していきましょう
時間を取得する。0以降ではDateオブジェクトを使うこともできます。時間を取得するスクリプトは以下のようになります。時間を取得したら、表示させます。//時間:取得した値が10未満であれば、頭に0という文字を足す。//分:取得した値が10未満であれば、頭に0という文字を足す。//秒:取得した値が10未満であれば、頭に0という文字を足す。デジタル表示なので、取得した値が10未満であれば、頭に0という文字を足すようにします。addというのは文字列の連結の際に使用する演算子です。テキストフィールドを用意し、変数を「v_time」にして画面表示します。日付を取得する。0以降ではDateオブジェクトを使うこともできます。ただし、Dateオブジェクトを使用する場合、取得できる月が0~11となるので、1を足しておきます。日付を取得するスクリプトは以下のようになります。日付を取得したら、表示させます。//月:取得した値が10未満であれば、頭に0という文字を足す。//日:取得した値が10未満であれば、頭に0という文字を足す。時間と同じように、取得した値が10未満であれば、頭に0という文字を足すようにします。そして、テキストフィールドを用意し、変数を「v_date」にして画面表示します。電波の状態を取得する。
//電波の状態
電波の状態を示す値は、下図のようにキャリアとFlash Liteバージョンによって異なります。1端末の場合は、0~100になるので注意が必要です。
図3 電波の状況を示す値
上記表に対応した電池のアイコンを表示するムービークリップ「signal_mc」を用意し、以下のようにフレームアニメーションを作成しました。電波の状態に合わせてsignal_mcのフレームを移動するようにします。
//電波の状態
//ジャンプするフレーム番号を入れる変数
電池の状態を取得する。電池のアイコンを作成する場合、まず充電中かどうかを判定し、充電中であれば充電アイコンを表示し、充電中でなければ電池の残量を表示するようにします。まず、充電中かどうかを判定します。
//充電中かどうか
次に電池の状態を調べます。
//電池の状態
電池の状態を示す値は、以下の表のように違いがあります。
図5 電池の状況を示す値
上記表に対応した電池のアイコンを表示するムービークリップ「batt_mc」を用意し、以下のようにフレームアニメーションを作成しました。電池の状態に合わせてbatt_mcのフレームを移動するようにします。実際のスクリプトは以下になります。
//充電中かどうか
//電池の状態
//ジャンプするフレーム番号を入れる変数
//充電中かどうか
//再生クオリティーの変更
//バイブレーションを鳴らす。5秒のバイブを1秒間隔で、2回鳴らす。5秒間隔で、5回鳴らす。//使用メモリ量を計算する。
→出力結果 メモリの使用量
この機能はFlash Liteというより、スクリプトの説明になってしまいますので、手順だけを簡単に紹介します。詳しくはダウンロードサンプルをご覧ください。手順としては以下のようなやり方で作成します。
現在の月を取得
その月が何日間であるかを取得(うるう年の判定も行う)
順番に並べる。ここまで機能ごとに小分けにして説明してきました。call関数というのは、フレームに書いてあるスクリプトを呼び出す関数です。例)フレームラベル「test」に書いてあるスクリプトを実行する。呼び出せるのはフレームスクリプトなので、再生ヘッドが通らないような箇所に書くようにして下さい。今回の待ち受けでは以下のようなフレーム構成で作成しました。
4フレーム目以降:関数の定義(再生ヘッドが通らない)
1フレーム目と2フレーム目で同じcall関数を実行しています。待ち受けの場合、1フレーム目のスクリプトは実行されますが、まれに描画が間に合わない問題が起こります。
待ち受けでできること、できないこと
1~2回目の連載では、「できないこと」を中心に書いてきました。残念ながら、連載の最後でもできないことを書いておこうと思います。
待ち受けでできること
例えば、待ち受けを表示させた回数を取得したり、データフォルダでもFlashの操作が可能なので、「たまごっち」のような育成ゲームを作ることができます。
待ち受けでできないこと
外部への通信ができません。例えば、天気予報など、外部からの情報を取得してFlash上で表示することはできません。バイブやサウンドを鳴らすことはできません。例えば、決まった時間にバイブやサウンドを鳴らしたりすることはできません。
3回に渡りFlash Liteの解説をしてきましたが、皆さんはどう思われましたか
おそらく、非常に制限が多くやりづらい印象で、開発者目線で言うと、Flash Lite単体では面白くないものに映ると思います。「できないこと」はこの連載で散々書きました。ただし、できないことが分かっていれば、おのずとできることも分かってくると思います。大事なのは、制限が多いFlash Liteではなく、あなたが持っている「制限のない、素晴らしいアイデア」です。できないのであれば、サーバサイドとの組み合わせでやってしまえばいいし、何もFlashだけで解決する必要は全くないのです。ぜひ、あなただけの組み合わせを見つけて下さい。この連載がそのきっかけになれば幸いです。
著者について
ワイノット株式会社、楽天株式会社、フリーランス活動を経て、2009年より株式会社hi-posi代表
」などに携わる。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
このアドビデベロッパーセンターを見ている方は、PCでのFlash開発は慣れていると思いますが、「携帯Flashは制限が多くて作りにくい」というイメージを持っているのではないでしょうか
本連載では、そうした方々に向けて、日本での携帯Flashコンテンツ開発について解説していきます。第1回目は、ざっくりとしたFlash Lite制作ガイドラインを記していきたいと思います。ただし、該当するFlash Playerバージョンの全機能をサポートしているわけではありません。さらに注意が必要です。日本では少し勝手が違います。そのため日本では、「キャリア別 Flash Lite」と捉えて開発に取り組むと理解しやすいと思います。
各キャリアが採用しているFlash Liteバージョンと主な特徴を表にまとめましたので参考にして下さい(2009年4月現在)
表を見ると分かるように、すべてのキャリア/バージョンで機能制限の内容が微妙に異なっています。さらに詳しい仕様は、以下のリンクでご確認ください。
キャリア共通事項を元にした6つのガイドライン
仕事で携帯Flashを開発するとなると、多くのユーザーを対象とするケースがほとんどでしょう
そこで、下図のようにキャリア/バージョンの違いを意識せずに共通して使える部分をガイドラインとして設定したいと思います。共通事項として以下の6つを挙げることができます。1で開発する。外部へのアクセスは、ボタンを押さないとできない。デバイスフォントのサイズは基本的に12ピクセルか24ピクセルを使う。
使用可能メモリは1MB程度
それでは、各ガイドライン項目について解説していきましょう
1で開発する。1を基準にします。1がサポートしているスクリプトは、Flash 4スクリプトと同等程度ですので、Flash 4スクリプトで開発を行うことになります。1が最も普及率が高い」と言われているためです。1搭載端末だという状況を基にしています。ちなみに、PC環境とは異なり、携帯端末ではFlash Liteのバージョンアップを行うことができません。上記は「回線の契約数」であり、実際の端末数や割合については、正式な数が発表されていません。1で制作するのが現状はまだベストだと言えます。x以降の機能的な違いは、少し乱暴な言い方ですが、主に「ムービーの圧縮(パブリッシュ設定→ムービーの圧縮)」とガイドライン6の「メモリの割り当て量の違い」の2点です。
x以降となれば、開発する方はドットシンタクスで行えるので楽になりますが、コンテンツを閲覧できなくなるユーザーが増えることを考えると、Flash Lite2
x以降で開発するメリットはほとんど無いと言えます。それを超える容量のファイルは、携帯電話で表示されません。そのため、小さい方に合わせて、「100KB以内で開発する」ことになります。1搭載端末だけは「一回の通信の上限が100KB」なので、loadMovieなどを繰り返せば、メモリが許す限りいくらでも再生可能となります。携帯Flashコンテンツで使用可能なキーは以下の通りです。
■使用可能なキー
■使用不可なキー
SoftBankでは左右キーも利用できますが、docomoとauではブラウザの「戻る」と「進む」に割り当てられているので使用しないようにします。外部へのアクセスは、ボタンを押さないとできない。外部ファイルへのアクセスは、ユーザーが能動的に「端末キーを押す」という操作をしないと実行できません。onReleaseなど、PCで言うところのクリックやキーボード操作がないとアクセスできないのです。そのため、フレームアクションから自動的にload系アクションが実行されることはありません。1が搭載され、フレームから実行できるようになっています。
■外部アクセス可能なonハンドラのイベント
上下キーには注意して下さい。上下キーは「フォーカスの移動」となり、PCでの「Tabキー」に当たります。フォーム入力の際に、Tabキーを使ってフォーカスを移動させますが、まさにそれです。各キャリア、バージョンによって仕様が変わってくるので注意が必要です。
ファイルの合計容量が100KBまで
1搭載端末は「一回の通信の上限が100KB」ですので、100KBに縛られることなく、メモリが許す限りコンテンツを読み込むことが可能です。
■外部テキスト読み込み時の注意
auの場合、cgiなどから出力されたパラメータを読み込む際、ヘッダを明示的に宣言しなければなりません。
たとえば、以下のようにプレーンテキストであると宣言します(php側の出力例)
デバイスフォントのサイズは基本的に12ピクセルか24ピクセルを使う。ファイル容量を軽く収めるために、デバイスフォントを使うことが多くなると思います。しかし、デバイスフォントを使う上で以下のことを考慮しなければなりません。端末ごとに使用できるフォントサイズが限られている。端末ごとにフォントが違う。デバイスフォントに関しては、正式なドキュメントがありません。そこで、テストファイルを作り調べることにしました。デバイスフォントでは、日本語テキストを表示することが多いと思うので、日本語フォントが何文字まで表示可能かという調べ方をしました。以下のQコードから、テストファイルを表示させてみて下さい。いくつかの端末について調べた結果が、以下の表です。
表はアップデートしていきたいと思いますので、是非テストファイルを試して、筆者までコメントやメール(shozo
com)をいただければ幸いです。1以降で共通するサイズは、12ピクセルと24ピクセルです。
また、上記表からそれぞれの最小表示文字数を見ると、12ピクセルで日本語19文字
24ピクセルで日本語9文字
となり、このサイズと文字数であれば、キャリア/端末機種に関係なく同じ様に見えることになります。
使用可能メモリは1MB程度
あまり知られていませんが、メモリ管理は最も重要と言ってもいいでしょう
ここで言うメモリとは、携帯電話からFlash Liteに割り当てられているメモリのことです。メモリが足りないとビットマップが赤く表示されたり、最悪の場合、コンテンツの再生が停止してしまいます。各キャリア/Flash Liteバージョンの大よその割り当てメモリは以下の通りです。メモリを節約するには、以下のことに気を付けてください。
複雑なベクターグラフィック
大きい範囲のマスク処理
大量のビットマップ画像
アルファチャンネル付きの画像
コンテンツ制作中にメモリ使用量を確認するには、2つ方法があります。とは言ったものの、実際に端末で確認してみると、900KB程度しかメモリを消費していなくても、コンテンツの作り方によってはメモリ不足になることがあります。そのため、実機での確認も忘れずに行ってください。駆け足で解説いたしましたが、制限ばかりが目立ちます。作り手としては作りづらいと思われるかもれません。ただ、現在は携帯でインターネットを利用する人が増加してきており、新しいユーザー層による新しいコミュニケーションも生まれています。是非制限に負けず、携帯コンテンツ作りにチャレンジしてみてください。第2回目は、とりあえず作ってみようということで、待ち受け時計の作り方を紹介したいと思います。
著者について
ワイノット株式会社、楽天株式会社、フリーランス活動を経て、2009年より株式会社hi-posi代表
」などに携わる。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
ようこそ、さん
お問い合わせ
ホームユーザ向け写真/ビデオ編集ツール
すべての業種・ソリューション ›すべての製品 ›アドビサポートに問い合わせる。
注文状況の確認
教職員および学生
アドビについて
投資家の皆様へ*
地域・社会への貢献*
お問い合わせ
個人またはホームオフィス
法人のお客さま
教育関係のお客様
おすすめ製品
すべてのソフトウェアを見る ›
購入後について
割引価格でコスト削減
ライセンスをご利用中のお客さま
その他の購入方法
販売店のご紹介
モバイルデバイスについて調べるには
デバイスセットと作業の効率化
デバイスの検索機能
デバイスプロファイルの更新
モバイルプロジェクトの作成
モバイルコンテンツのプレビューとテスト
例えば、モバイルコンテンツのプレビューとテストを、実機で最終的にテストする前に、デスクトップで行うことができます。さらに、ワークフローの効率化、プロトタイプの素早い作成、パフォーマンスの最適化などを簡単に実現できます。この記事では、Device Central CS3で変わるモバイルコンテンツ制作のワークフローとその魅力、使い方について紹介しています。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
1 によるダイナミックコンテンツの使用
リモートコンテンツへの接続
1 を使ってより優れたユーザーインタラクションを実現
1 によるダイナミックコンテンツの使用
様々な目的のためにインターネットに接続することを可能にする Flash Lite アプリケーションが次から次へと登場しています。プログラムによって可能になり得ることは無限ですが、多くのコネクション型アプリケーションの基本的な目的は、煎じ詰めれば次の 3 つになります。すなわち、リアルタイム情報のダウンロード、ユーザーデータ (フォーム) のアップロード、モジュラーダウンロードです。1 で可能になるもっとも画期的なことに挙げられます。前もって SWF ムービーにプログラムしておくことが不可能であった情報をロードする能力があれば、どのアプリケーションの柔軟性やパワーも非常に強化されることになります。今や、私は Flash Lite アプリケーションを使って交通状況を確認し、天気予報を見て、最新ニュースを知り、さらにテレビ番組をチェックするほどです。本当に役に立つ最新の情報を提供するためには、その情報は各ユーザーにとって意味がある、カスタマイズされたものでなければなりません。1 では、ダイナミックデータをリクエストするプロセスで、サーバーにコンテンツをアップロードすることもできます。これまでに私がおもしろいと思ったアプリケーションには、フライト状況や web の検索、あるいはチャットクライアントによる友人とのコミュニケーションさえ可能にする Flash ファイルがありました。リッチなコンテンツや体験を実現するために、わくわくするようなことを考える一方で、携帯デバイスには従来のデスクトップコンピュータにはないいくつかの制約があることを思い出すことも必要です。もっともよく問題にされていることは、携帯電話のはるかに小さなストレージ容量と制限のある帯域幅です。1 では、従来の Flash 環境で使用されてきたテクニックの一部を使用することで、この両方の問題による影響を最小限にすることができます。
コネクション型アプリケーションのサンプル
Flash の場合と同様に、Flash Lite には強力なデベロッパーコミュニティがあり、熱心なデベロッパーたちが自作のアプリケーションやサンプルを公表し、共有しています。多種多様なデータをロード可能なコネクション型アプリケーションの次の例をご覧ください。com からの価格とレビューを引き出す、使いやすい比較ショッピングアプリケーションです。
使用できるコンテンツフォーマット
Flash Lite によって実現できることをご理解いただけたところで、次に Flash Lite にロード可能なコンテンツタイプについて理解する必要があります。既存の Flash アプリケーションにはテキストベースの変数と SWF ファイルをロードできます。正確に言えば、変数をストリングとして定義する URL がエンコードされたテキストファイルを特定タイムライン内にロードでき、Flash Lite か Flash 4 のどちらかに書き出されたものであれば、別の SWF もロードすることができる、ということになります。ロードした SWF ムービーはアプリケーション内でムービークリップのように機能します。
変数のロードと SWF ファイルのロードのために記述されるコードは次のようになります (次のセクションでより詳細な例を示します)
これは、柔軟性とデータフォーマットに関してデスクトップコンピュータの Flash Player で可能なことに比べると貧弱かもしれませんが、少し工夫することで、テキストや SWF ファイルをロードすることによりほとんどすべてのことが可能になります。サーバーサイドでは、自分でスクリプトを記述して、XML またはその他のテキストベースのデータを URL エンコーディングに変換することが可能です。私のアプリケーションでは、サーバーサイドの様々な SWF 生成スクリプトの 1 つを使って、JPEG イメージファイルを Flash 4 SWF ファイルに トランスコード して携帯電話機にダウンロードしました。オーディオやビデオを Flash ファイルにトランスコードすることができるアプリケーションさえあります。フォーマットについての説明は、非常に高いレベルのものですが、心配しないでください。次のセクションでは、各データフォーマットと Flash Lite 対応携帯電話機からインターネットに接続することの特別な性質について詳しく解説します。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
これらのデバイスには以下の機能が含まれています。
多様なサードパーティーハードウェアおよびソフトウェアソリューション
もうお分かりだと思いますが、Pocket PC は電子手帳をはるかに超えたものです。一度開発すると、あらゆるところで公開できる。従来 Macromedia Flash は、Pocket PC 用のゲーム、エンターテインメント、ユーティリティを作成するために使用されていましたが、今では、より斬新で刺激的な Flash コンテンツが、カスタムブランドの e コマースやアプリケーションとして、いたるところでアクセス可能となっています。CDK には、Flash コンテンツの例だけではなく、開発者のために用意された数え切れないほど多くの情報があります。トピックは以下のとおりです。
ファイルサイズとメモリ
FLA やミドルウェアの例も含まれていますので、時間をかけて探索をしてみてください。web サイトへアクセスするために使用するデバイスに応じてビジターを別のページへ転送するための機能は非常に便利です。スタンドアローン Player の使用には、スクリーン全体で Flash コンテンツを表示できるなどの多くの利点があります。現在、ただ 一人の開発者 (英文のみ) が、スタンドアローンアプリケーションに成功していますが、将来、他の開発者も類似する機能を提供することが期待されます。
テスト、テスト、そしてまたテスト
Flash コンテンツを繰り返しテストするのは大切なことです。作成したアプリケーションが思い通りに実行されるかを確かめることです。あるクライアントのためにアプリケーションを開発するなら、デザイン、開発、テストを通してクライアントに参加してもらってください。Pocket PC デバイス用にコンテンツを開発中ではあるがデバイスがないのであれば、想像力を活かしてください。Macromedia ディスカッショングループ にリクエストを掲示して、テストしてもらうよう頼むことも可能です。同僚からのフィードバックは役立ち、価値あるものです。
今後について
そしていつか、目標に辿り着きます。
ハードウェアに関しては、常に新しいデバイスが登場するでしょう
電池寿命の向上
これらの Macromedia MX 製品を統合することによって、エレクトロニックコンテンツと web 準拠のダイナミックアプリケーションの作成が可能となります。
ディスカッショングループ(英文のみ)
著者について
Bill Perry: モバイルデバイス用アプリケーション開発を手掛けるフリーランスデベロッパー
現在、さまざまな携帯電話環境における、新たな動的モバイル Flash アプリケーションの可能性を模索中
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
配布用SISファイルの作成
画面を横切るメールにキャラクターを飛ばして乗せる(添付する)ゲームを作ります。メールが左から右へと流れていきます。通り過ぎたメールは一定時間後に再び流れてきます。メールの種類は各ライン2種類ずつ、ランダムで変化します。プレイヤーは「5キー」を押してから放すことで、キャラクターを飛ばすことができます。押していた時間によって飛ぶ距離が変わります。飛ばしたキャラクターとメールがぶつかった時にメールのグラフィックを変更します。0になったことで利用可能になった4つの機能にフォーカスを当てて製作していきます。これにより煩雑になりがちだったcall()や変数の処理がまとめやすくなりました。_globalを用いてグローバル関数を作成することも可能です。この場合どの場所からでも絶対、相対パス指定なしで関数にアクセスすることができるようになります。
次に、溜め撃ちを再現するためにキープレス、キーリリースを使ってみましょう
まずボタンが押されたことを検出するスクリプトを書きます。作例のゲームはテンキーの5キーを使って遊びます。テンキーの5キーのキーコードは101です。このままではキーが押されたら処理が行われてしまうので、テンキーの[5]キーが押されたときに処理を行う用にスクリプトを追加します。次に離した瞬間、を検出します。押された瞬間から離した瞬間までの時間を計測すれば、特定のボタンがどれだけの時間を押されていたか調べることができます。この関数は領域の接触を判定する関数で、これを使えば衝突の処理が大変楽になります。これにより長くなりがちだった当たり判定が簡単に記述することができるようになりました。これを使うことでアプリケーションの途中経過や、設定の保存などができるようになりました。今回はゲームのハイスコアを記憶する用途に使ってみます。まずはオブジェクトを生成します。既にデータがあるかどうかは、使用する変数が保存されているかどうかで調べることができます。最後に現在保存されている値より、更新された値が大きかったときにローカルのデータを上書きします。
0 構造のスクリプトに2
0の新機能を盛り込む形でサンプルを作成しました。0に触れていない方は、Flash6以降の記述で製作できるのでPC用の作品を移植するのも簡単になったと思います。皆さんも携帯端末という特殊な環境下でFlash Liteで何が表現できるか、是非挑戦してみてください。
著者について
の社長を務める。
モバイルゲーム・アプリケーション・モバイルペットなど、Sprite社の作品集は製品ショーケースサイトのwww
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
1コンテンツから素早く複数のバージョンを作成する方法 | デベロッパーセンター
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
1コンテンツから素早く複数のバージョンを作成する方法
モバイルコンテンツのためにFlash Liteを利用する最大の長所は、リッチなモバイル体験が素早くデザイン・開発・導入できるという点です。Flash Liteのもう1つの長所は、一度モバイルコンテンツを作成しておけば最低限の移植作業だけで、あらゆるデバイス上でも再生できるようにすることが可能な点です。
これはモバイルの世界では、とても重要なポイントだといえるでしょう
市場のセグメント化が激しいモバイルプラットフォーム(国や地域におけるセグメント化など)であるがゆえ、Flashモバイルコンテンツをあらゆる再生端末に対応させるためには、必ず何らかの移植作業がつきまといます。この記事を読み進めれば、一度制作したコンテンツを最小限の作業でさまざまなデバイスへと展開する上で、Flashがいかに優れているかがお分かりいただけるはずです。このチュートリアルをフォローするには、次のソフトウェアがインストールされている必要があります。
この記事に必要な予備知識
Flashに関する予備知識は不要です。この記事はFlashオーサリング環境の初心者を対象としています。
携帯電話機種間での移植
コンテンツを再利用し、さまざまなデバイスに対応させることを「移植」と呼びます。Javaのゲームやアプリケーションといった典型的なモバイルコンテンツの場合、実行エンジンごとにオリジナルコンテンツを移植する必要が発生します。移植作業には相当の時間が掛かることから、開発サイクルの長期化やアプリケーション開発コストの増大といった事態が発生しかねません。ほとんどの場合、画面サイズや搭載ユーザインタフェースの違いといった、デバイスごとのスペックに配慮するだけで移植作業が完了します。しかも、ちょっとしたコツさえつかんでしまえば、とても幅広い種類のデバイスにコンテンツを対応させることが可能です。スタンドアローンPlayer用のコンテンツをブラウザ用に移植する場合、注意しなければならない点がそれ相応にありますが、 Flashコンテンツを携帯電話機種間で移植する場合、考慮しなければならない点はそう多くありません。ここでの一番の考慮事項は画面サイズの違いです。これは、携帯機種間でFlashコンテンツを移植する際、頻繁に考慮しなければならない事柄です。画面サイズはメーカごとに異なるだけでなく、同一メーカの機種間でも大小や横幅、縦長・横長の違いというようにさまざまなものが存在します。
作成するコンテンツの内容にもよりますが、このようなサイズの大小には、ステージを最小画面サイズにあわせて設定し、より大きな画面サイズの機種ではステージ外のコンテンツも見えるようにすることで、対応することができます(図1参照)
コンテンツが最も大きな画面サイズでも適切に表示されるよう、オリジナルムービーのステージに配置するコンテンツには十分な大きさを確保し、これらを裁ち切りになるように配置する必要があります。
より大きな画面でのコンテンツ再生を想定し、最小画面のステージよりサイズの大きなコンテンツを配置
下に示すサンプルの場合、より大きな画面サイズに対応させるのを機会に、ゲーム画面のレイアウトを少し変更しています。
コンテンツが新しいサイズにフィットするようにレイアウトを調整
調整手順は以下の通りです。オリジナルのFLAファイルのコピーを作成します。より大きな画面サイズにあわせて、新しいFLAファイルのステージサイズを変更します。なおFlashは、混乱が生じないよう、ステージ左上の角を基準にステージサイズを変更します。コンテンツの背景や要素の位置・大きさを調整します。このような編集作業を防ぐためにも、ステージ上の位置はあらかじめ絶対指定しないようにすることがポイントです。
_x というように参照し、後で木を動かしてもこの値が追随するようにしておくとよいでしょう
この節で紹介した作業は、ほぼ同一のユーザインタフェースを採用するNokia製デバイス間での移植であったため、とても簡単でした。ここで取り上げた携帯機種は、どちらも同様のソフトキーと操作性を採用していました。機種の違いだけでなく、メーカ間の違いも考慮し出すと、作業の難易度がやや高くなります。
異なるデバイスタイプ間での移植
このデバイスは携帯電話とは全く異質のユーザインタフェースとナビゲーション機能を搭載しており、クリックして選択された状態になるのではなく、単にクリックすることしかできない四方向限定のクリックシステムを採用していました。我々はFlashでの開発作業を始める前に、入念に計画を練ることにしました。
まず、通常使用時にどの画面が順番に表示されるかを紙上に書き出し、ユーザがコンテンツを再生する際、どのような道筋をたどるのかを論理的に整理しました(図3参照)
既存コンテンツに対して新しいユーザインタフェース経路を計画する場合、ストーリーボードやフローチャートの作成はとても有効です。もちろん、ゲームやアプリケーションを新規に作成する場面でも、この手法は効果を発揮します。画面上の項目を選択するには右方向をクリックし、 1つ前の項目に戻る(選択された項目を解除する)には左方向をクリックします。我々は、この手法をゲームにも採用し、右をクリックすると項目の選択、左をクリックすると終了という流れになるようにしました。このゲームの場合、「ミサイルを発射する」といったボタン操作が必要ではなかったため、シンプルなナビゲーションが採用でき、移植作業がスムーズに行えました。図4に示すのが、一覧を上下して選択された項目をクリックするS60のメニューシステムと、上下・左右に移動すると同時に、項目が選択されたとみなされる形式の、U10のメニューシステムです。
次のステップ
Flashなら、モバイルコンテンツの作成があらゆる次元において、はるかに容易になります。しかし、モバイル・携帯電話市場が複雑にセグメント化されていることを考慮すると、複数のデバイスに対応させるためには移植作業が発生せざるを得ません。しかし、ある程度の計画性とFlashの柔軟なオーサリング環境があれば、この作業はそう大変なものではありません。モバイルデバイス間での移植作業に関する他のサンプルについては、モバイル&デバイスデベロッパーセンターの以下の記事を参照してください。
著者について
1コースウェアのアドビ認定インストラクターとしても活躍中
Moketは、このトレーニングを他社に先駆けて提供
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
1 における音声の使用 | デベロッパーセンター
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
携帯電話における音声の使用
1 における音声フォーマット
オーサリング環境におけるバンドル音声の使用
印刷用に表示
1 における音声の使用
大好きな映画を音声なしで鑑賞することを想像してみてください。
さほど質の高い体験とは呼べないのではないでしょうか
携帯端末用のプロジェクトに音声を盛り込めば、ユーザーに優れた体験を提供できます。1 がリリースされたことで、携帯端末上の体験を今まで以上に魅力的に、しかも一層インタラクティブにする可能性が拡がります。この記事では、ユーザーの音感に訴えかけるさまざまな方法を紹介します。また、携帯電話上で音声を使用する際の注意事項や、音声の準備方法、Macromedia MX 2004 オーサリング環境における音声の利用方法について紹介します。
この記事に必要なもの
このチュートリアルをフォローするには、つぎのソフトウェアとサンプルファイルをインストールする必要があります。
著者について
Nike や Sony、MTV、Visa、NBC などの業界リーダーを顧客に持ち、リッチデータ連動マルチメディアアプリケーションや各種プレゼンテーション、ゲーム、カスタムソフトウェアソリューションなどの開発を手掛ける。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用規約およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
1 における音声の使用 | デベロッパーセンター
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
携帯電話における音声の使用
1 における音声フォーマット
オーサリング環境におけるバンドル音声の使用
1 における音声の使用
一度作成したバンドルファイルは、複数の携帯端末上で再生でき、開発プロセスが大幅に簡素化できます。exe アプリケーションを使用します。なお、バンドルしたファイルは、FLS ファイルとして保存され、携帯端末上でイベントが呼び出されると、このファイル再生がされます。1 がこのバンドルファイルを処理し、携帯端末がサポートしているフォーマットを利用して音声を再生します。なお、このチュートリアルをフォローするには、以下のステップを飛ばして、既にバンドル済みの音声を利用することもできます。この場合、記事の次のセクション、「オーサリング環境におけるバンドル音声の使用」にお進みください。アプリケーションが起動したら、図 1 に示すウィンドウが表示されます。
新しいウィンドウが開き、バンドルしようとしている音声のファイル名とファイル容量が一覧表示されます (図 2 参照)
fls" ファイルを "サウンドファイルをこちらにドロップしてください" ウィンドウ (図 1 のウィンドウ) にドラッグしてみます。
新しいウィンドウが開き、バンドルされている音声の名前と種類、ファイルサイズが一覧表示されます (図 3 参照)
ここで表示される情報は、バンドルしたファイルの中身を忘れた場合や、第三者から受け取った音声ファイルの内容を確認する際に便利です。
また、バンドルファイルの容量を確認する際にも、このウィンドウに表示される情報を確認すると良いでしょう
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
1 における音声の使用 | デベロッパーセンター
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
1 における音声の使用
大好きな映画を音声なしで鑑賞することを想像してみてください。
さほど質の高い体験とは呼べないのではないでしょうか
携帯端末用のプロジェクトに音声を盛り込めば、ユーザーに優れた体験を提供できます。1 がリリースされたことで、携帯端末上の体験を今まで以上に魅力的に、しかも一層インタラクティブにする可能性が拡がります。この記事では、ユーザーの音感に訴えかけるさまざまな方法を紹介します。また、携帯電話上で音声を使用する際の注意事項や、音声の準備方法、Macromedia MX 2004 オーサリング環境における音声の利用方法について紹介します。
この記事に必要なもの
このチュートリアルをフォローするには、つぎのソフトウェアとサンプルファイルをインストールする必要があります。
携帯電話における音声の使用
効果的なモバイルコンテンツの開発には、音声を的確に使用することが重要です。音声は、その使用方法によって、ユーザー体験のプラスにも、マイナスにもなり得ます。各種操作に対して音声フィードバックや警告を提供することが望ましいケースはたくさんあります。
しかし、仮に携帯電話からデータサービスにアクセスしている場合はどうでしょうか
ユーザーは、第三者と会話しながら、あるいは運転中、散歩中、公共交通を利用中に、データサービスにアクセスすることもあります。このような使用場面では、ユーザーは通常の PC を操作しているときのように、独占的に注意を払っているわけではありません。モバイル用のアプリケーションを開発する場合、ユーザーがどのような状態でアクセスするのかをさまざまに想定する必要があります。モバイルデバイスが「携帯性」という自由を提供するのは明確ですが、このことと同様に明確なのが、この自由さを勘案してアプリケーションをデザインする必要があるということです。
では、携帯電話用コンテンツと PC 用の Flash ファイルとでは、音声の扱い方がどう違うのでしょうか
まず、携帯電話が扱うことができる音声は、PC のそれよりはるかにバリエーションが少ないと言えます。どの音声フォーマットをサポートしているかは、携帯機種によって異なります。ただし、携帯機種のほとんどは、何らかのタイプの MIDI をサポートしています。
1 における音声フォーマット
これらの音声フォーマットは、通常の Flash がサポートするものとは異なるので、モバイルアプリケーションをオーサリングする際には注意が必要です。したがって、モバイルデバイス用にオーサリングする際には、Flash ドキュメントの中に MP3、WAV、AIFF といった Flash がネイティブでサポートするプロキシ音声を一時的に利用し、この一時的な音声ファイルを最終的な MIDI ファイルへのポインターとして使用します。音声ファイルをポインター (プロキシ) と整合させる処理は、Flash Lite ムービーをパブリッシュする際に起こります。この件に関しては、後ほど詳細を紹介します。MIDI 音声ファイルを使用する利点は、MIDI ファイルの容量が小さいことにあります。これは、MIDI ファイルには、携帯電話上の MIDI 音源を再生するためのインストラクションのみが記述されているからです。
MIDI ファイルの仕組みを理解するには、昔のピアノ自動演奏装置を想像してみると分かりやすいでしょう
ピアノ自動演奏装置は、音楽をどのように演奏するかが記述された紙を読み取る仕組みになっています。これは、MIDI ファイルがモバイルデバイスに対してどのように音声を再生するのかを指示するのと同じです。携帯電話用のコンテンツを作成する場合、コンテンツの消費バンド幅を考慮して、ファイルサイズに注意する必要があります。MIDI ファイルはファイルサイズが非常に小さいうえに、MIDI 音源も非常に小さいといえます。携帯電話の MIDI 機能にもよりますが、たとえわずか数キロバイトのファイルを使用しても、MIDI なら、とても魅力的な音楽が実現できます。携帯電話に関するもう1つの注意点は、携帯電話にはごく少量のメモリしか搭載されていない点です。したがって、携帯電話上では大容量ファイルを再生することができません。MIDI 以外の音声を使用した場合は、ファイルサイズがとても大きくなることがあります。また、MIDI 以外の音声を圧縮した場合、この再生には相当のプロセッサ処理能力が必要となります。たとえ PC 上で問題なく音声を再生できたとしても、携帯電話上では充分な再生速度が確保できないことや、再生が一切できないといった場面があります。携帯電話は、その製造メーカーによって、サポート対象の MIDI 音声フォーマットが異なります。
では、ターゲット機種が確定していない場面で、さまざまな音声フォーマットに対応するには、どうすればよいのでしょうか
たとえば、ドコモの携帯電話の場合、6 社もの機種製造メーカーが存在し、それぞれ MFi 再生の音色が異なります。この状況に対応するための選択肢は、次に挙げる 2 つです。一度作成したバンドルファイルは、複数の携帯端末上で再生でき、開発プロセスが大幅に簡素化できます。exe アプリケーションを使用します。なお、バンドルしたファイルは、FLS ファイルとして保存され、携帯端末上でイベントが呼び出されると、このファイル再生がされます。1 がこのバンドルファイルを処理し、携帯端末がサポートしているフォーマットを利用して音声を再生します。なお、このチュートリアルをフォローするには、以下のステップを飛ばして、既にバンドル済みの音声を利用することもできます。この場合、記事の次のセクション、「オーサリング環境におけるバンドル音声の使用」にお進みください。アプリケーションが起動したら、図 1 に示すウィンドウが表示されます。
新しいウィンドウが開き、バンドルしようとしている音声のファイル名とファイル容量が一覧表示されます (図 2 参照)
fls" ファイルを "サウンドファイルをこちらにドロップしてください" ウィンドウ (図 1 のウィンドウ) にドラッグしてみます。
新しいウィンドウが開き、バンドルされている音声の名前と種類、ファイルサイズが一覧表示されます (図 3 参照)
ここで表示される情報は、バンドルしたファイルの中身を忘れた場合や、第三者から受け取った音声ファイルの内容を確認する際に便利です。
また、バンドルファイルの容量を確認する際にも、このウィンドウに表示される情報を確認すると良いでしょう
オーサリング環境におけるバンドル音声の使用
ここまでの作業が完了したら、次に、以前紹介した一時的な音声ファイル (プロキシ) を利用します。なお、このプロキシ音声ファイルは、容易に入れ替えることができます。標準的な音声ファイルが携帯端末上での再生に適したフォーマットに入れ替わるようにするには、標準的な音声ファイルのリンク先を、Flash アプリケーションをパブリッシュする際に使用する MIDI ファイル、またはバンドルファイルに設定しておきます。プロジェクトをパブリッシュすると、Flash は自動的にプロキシ音声を外部リンク音声に入れ替えます。こうしておけば、パブリッシュ時に生成される SWF ファイルに、携帯端末上で再生するための音声フォーマットが含まれます。なお、携帯端末上で音声を再生するために、デバイス特有の音声や音声バンドルを Flash ドキュメントに追加する際には、次の事柄に注意するようにしてください。
この機能はイベントサウンドのみに使用できること
音声をリンクした場合、[効果]、[同期]、[編集] のオプションが使用できないこと
開発中のプロジェクトの音声1つずつに、外部音声ファイルを指定しなければならないこと
プロジェクトをパブリッシュする際に、デバイス特有の音声、または音声バンドルがあること
一度アプリケーションを携帯端末上にデプロイすれば、以降、音声を再生するためにこれらのファイルは必要ありません。
では、イベントサウンドとはどのようなモノのことなのでしょうか
イベントサウンドとは、タイムラインの挙動とは別に再生する音声のことであり、イベントサウンドは任意のイベントを利用して呼び出すことができます。また、イベントサウンドは、サウンドが完全にダウンロードされなければ再生が始まらず、音声バッファの最後に達するか、呼び出された音声がキャンセルされるまで音声を再生し続けます。SWF ファイル内のイベントサウンドは、ループするようにも設定できます。ループを指定しておけば、ファイルサイズを抑えつつ、常に音声が再生されるようにすることも可能です。
では、ここまでに用意した音声を FLA ファイルに追加してみましょう
この記事のサンプルファイルをダウンロード / 解凍します。) なお、このファイルは、皆さんが制作する Flash ムービーにおいて再利用しやすいよう、汎用的な構成を採用しています。ステージに表示されている "soundTest" ムービークリップをダブルクリックします。次に、"mySounds" ムービークリップをダブルクリックして、このシンボルのタイムラインを確認できる、シンボルの編集モードに入ります。最初の 3 つのラベルの下には、一時的な音声ファイルが配置されています。
4 つ目のラベルの下には、WAV ファイルがあり、5 つ目のラベルの下には、MP3 ファイルが配置されていることが確認できます (図 4 参照)
"mySounds" ムービークリップの親ムービークリップのタイムラインに戻り、1 つ目のボタンを選択してから [アクション] パネルを開き、つぎのコードを入力します。2 番目のボタンを選択して、つぎのコードを入力します。3 番目のボタンを選択して、つぎのコードを入力します。4 番目のボタンを選択して、つぎのコードを入力します。5 番目のボタンを選択して、つぎのコードを入力します。このアイテムのプロパティを表示して、[デバイスサウンド] 項目の右側に表示されたフォルダのアイコンをクリックし、このチュートリアルの "Sounds" フォルダを参照します。mld" ファイルを選択して、[開く] ボタンをクリックします。
これで [デバイスサウンド] のボックスに音声ファイルが表示されるようになりました (図 5 参照)
後は、パブリッシュ設定の値を正しく設定するだけです。1」を選択し、[デバイスサウンドの書き出し] チェックボックスにチェックを入れます。
1 ムービーをパブリッシュする前にパブリッシュ設定のオプション値を確認
ムービーをパブリッシュします。これでムービーが完成しました。1 対応機種に転送して、動作を確認してください。1 で音声を使用する方法、オーサリング環境において音声を準備 / 使用する方法などを紹介しました。音声を利用すれば、操作に対するフィードバックを提供するだけでなく、エンドユーザーに一層優れた体験を提供することにもつながります。com) また、是非私へも完成したプロジェクトをお知らせください。
つぎのステップ
モバイルデバイスに向けたオーサリングに関する詳細については、モバイル & デバイスデベロッパーセンターに公開されている、各種コンテンツ開発キットも合わせてご覧ください。
著者について
Nike や Sony、MTV、Visa、NBC などの業界リーダーを顧客に持ち、リッチデータ連動マルチメディアアプリケーションや各種プレゼンテーション、ゲーム、カスタムソフトウェアソリューションなどの開発を手掛ける。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
パート1と2を読んでいない場合は、次のリンクを参照してください。ここでは、ゲームを別のデバイスに簡単に移植できることを示します。このチュートリアルを完了するには、次のソフトウェアおよびファイルがインストールされている必要があります。1 のスクリプトについて十分に理解する必要があります。Flash 8 モバイルエミュレータまたはデスクトッププレーヤーを使用してブラウザで、コンパイル済みゲームファイルを実行できます。ただし、実際のゲームパフォーマンスとユーザの操作を体験するには、iRiver U10 も必要です。
ステージとアセットの回転
2つのデバイス間で移植する場合の明白な違いは画面サイズです。縦横比はそれほど違わないのでゲーム全体を90度回転させて、Flashでゲームをより低い解像度に縮小することにしました。実質的には画面を回転させただけです。ムービークリップの座標系も一緒に回転します。ムービークリップ内にほとんどのゲーム機能を組み込んだので、ゲームを回転させるのは比較的簡単です。各アプリケーション状態を確認してステージ上のすべてを選択し、時計回りに90度回転させて、すべてを中央に配置しました。画面を回転させたので、コードをいくらか調整する必要がありました。ほとんどの機能はムービークリップに組み込まれていますが、プレーヤーの宇宙船のムービークリップはメインタイムラインに配置されています。このため、その動きを制御するコードを更新する必要があります。さらに、2つのデバイスの入力コントロールが異なるため、これも更新する必要があります。
宇宙船の動きのコードの調整
ステージサイズは変更していないので、宇宙船が移動するピクセル数も同じです。ただし、宇宙船が移動する方向が変わります。
これは、移動方向をx軸からy軸へ変更しただけです(図1を参照)
コードの変更は、gameというラベルが付いたフレームの左および右ボタンです。
赤丸で囲まれた宇宙船を動かすボタン
ゲームコントロール用のコードの調整
ユーザの操作を必要とするゲーム状態がいくつかあるので、移植に必要な多くの変更は、ゲームをコントロールするためのコードの調整です。ユーザの操作が必要なメニュー、プレイ方法、ゲーム、敗北状態のコードを変更しました。
メニューの制御
メニューの制御では、上および下キーを押してメニューオプションを切り替え、右キーで選択します。ゲームプレイ中はデバイス自体が回転されるため、元のコントロールがデバイス上の方向コントロールの向きと対応しなくなります。メニューフレームのmenu_mcムービークリップでは、キーキャッチャボタンにメニューを制御するコードが含まれています。
プレイ方法の制御
プレイ方法状態でも同様の調整を加えます。プレイ方法画面のキーキャッチャボタンにコードが含まれています。
ゲームの制御
宇宙船の動きのコードは既に変更したので、この状態で変更するのは発射ボタンとメニューボタンだけです。
武器の制御のコードが今はステージの左側にあるボタンに含まれ、メニューに戻るコードがステージの反対側にあるボタンに含まれています(図2を参照)
赤丸で囲まれた武器およびメニューのコントロール
武器コントロール用の元のU10のコード
敗北状態のメニューボタン
敗北状態にあるのは、プレーヤーをメニューに戻してゲームを再初期化するボタン1つだけです。キーキャッチャボタンにコードが含まれています。
デバイスパフォーマンス向上のためのレンダリング品質の変更
ゲームの画面の向きとコントロールを更新した後で、Nokia 6680携帯電話でゲームをテストしました。そこで、ゲームプレイ中のレンダリング品質をlowに下げる代わりに、次のようにゲーム状態のActionsレイヤでmediumに切り替えました。Nokia 6680携帯電話のパフォーマンスが優れているため、新しい設定でもゲームはきれいに表示され、パフォーマンスも良好です。
デバイスフォーマットにあわせたコンテンツ調整
移植のために必要な最後の変更は、プレイ方法画面のイメージを新しいデバイスに合うように変更することです。
変更前と後のプレイ方法画面
移植したゲームは新しいデバイスでも問題なく機能します。非常に簡単でした。Flash Liteプレーヤーには一貫性があり、アセットが再利用可能なので、移植は4時間足らずで完了しました。今後のプロジェクトではもっと簡単に移植できるように、サイズや画面方向を変更するときのために、ゲームやアプリケーションのすべての機能をムービークリップに配置しようと思っています。
高度なリソース
著者について
現在は、Flashオーサリング担当のシニアQEエンジニア
それ以前は、モバイル&デバイスデベロッパーリレーション、Flashテクニカルサポート、デベロッパーセンターエディター、Macromedia Centralのデベロッパーリレーションなど、さまざまな立場からデベロッパーコミュニティをサポート
モバイルアプリケーションの作成とFlashでの開発に情熱を注ぐ一方で、幅広い趣味を持つ。
余暇には、バックパッカーとして広大なヨセミテ国立公園の山岳森林を訪れたり、電子音楽を作曲するほか、トランプゲーム「カナスタ」に興じることも
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
使用可能なメモリの計測
断片化とメモリの再使用
メモリを効率よく使用するための最適化
Flash Liteプレーヤーは様々な構造体にダイナミックにメモリを割り当てます。安定したパフォーマンスを保証するため、Flash Liteはオペレーティングシステム(OS)から一定サイズのメモリを確保します。これはスタティックメモリヒープと呼ばれます。このメモリはプレーヤーを起動したときに確保されます。サイズはデバイスメーカーによって定義されています。メーカーの設計に基づいて、OSからプレーヤーに追加のメモリが割り当てられます。これはダイナミックメモリヒープと呼ばれます。Flash Liteは起動時にこのヒープ用のメモリを確保しませんが、必要に応じてOSからダイナミックに割り当てます。ただし、デバイスメーカーによってホストOSがプレーヤーに割り当てることのできるメモリの総量の上限が定義されています。スタティックヒープもダイナミックヒープも両者の合計が指定された総量に達するまで増加できます。プレーヤーはすべてのメモリ要求に対して、まずスタティックヒープからの割り当てで対応しようとします。スタティックヒープに十分なメモリが残っていない場合、プレーヤーはダイナミックヒープからの割り当てを試みます。これは32 KB単位でスタティックヒープに追加されます。つまり、スタティックヒープのサイズが大きくなります。ダイナミックメモリがない場合、プレーヤーはエラーを発生して終了します。レンダリングオブジェクトとJPEG画像ではメモリ割り当ての順序が逆になります。最初にダイナミックヒープからメモリの割り当てが行われます。ダイナミックヒープにメモリがなければスタティックヒープから割り当てられます。xは可能なかぎりダイナミックメモリを使用してJPEGとレンダリングオブジェクトを格納します。その他の構造体にはスタティックメモリが使用されます。プレーヤーが一時停止している場合やバックグラウンドにある場合、解凍されたJPEGとレンダリングオブジェクトにダイナミックヒープから割り当てられていたメモリは解放されてOSに戻ります。スタティックメモリヒープから解放されたメモリ(記事の後半で説明します)は、OSに戻りません。プレーヤーが必要に応じて新しいオブジェクトに再使用します。つまり、スタティックヒープのサイズは減少しません。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
使用可能なメモリの計測
断片化とメモリの再使用
メモリを効率よく使用するための最適化
ガベージコレクションは自動メモリ管理の一種で、アプリケーションで使用されていないオブジェクトのメモリを解放します。Flash Liteは、ガベージコレクタ(GC)というプロセスを60秒おきに実行して使用されていないメモリを解放します。メモリの使用量が突然20%以上跳ね上がった場合も実行されます。この設計によってほとんどのユースケースが処理されるので、このプロセスをコードから明示的に呼び出す必要はなく、そのためのAPIやコマンドもありません。Flash Liteがいつどのようにガベージコレクションを実行するかを制御することはできませんが、コードを介して不必要になったメモリを解放するのはよいことです。解放できるメモリをガベージコレクタが把握するのにも役立ちます。タイムラインやグローバルオブジェクトによって使用されたメモリはdeleteステートメントで解放できます。ローカルオブジェクトが使用したメモリは参照変数をnullに設定することによって解放できます。変数をnullに設定すると、実際にはそのオブジェクトの参照数が減るだけです。オブジェクトが使用するメモリは、参照数がゼロになったとき、つまり、そのオブジェクトへの参照が存在しなくなったときに解放されます。これはマークアンドスイープというよく知られたガベージコレクション方法に基づいています。マーク段階では、コレクタがアプリケーションによって参照されていないオブジェクトをマークし、スイープ段階でメモリを解放します。Flash Liteがガベージコレクションプロセスを開始するたびに両方の段階が実行されます。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
使用可能なメモリの計測
断片化とメモリの再使用
メモリを効率よく使用するための最適化
断片化とメモリの再使用
他のメモリ管理システム同様、Flash Liteでもアプリケーションがメモリの割り当てと解放を行うと断片化が生じます。ガベージコレクションサイクルが完了すると、通常、ヒープ内に解放されたメモリの「島」ができます。これによって、いわゆる断片化が発生します。ガベージコレクタによって解放されたメモリは含まれません。したがって、ガベージコレクタによって解放されたメモリがある場合は、通常、新しいオブジェクトで再使用できるメモリが他にもあります。この概念を次に説明します。例えば、あるデバイスのメーカーが256 KBのスタティックメモリと512 KBのダイナミックメモリを定義しているとします。さらに、タイムラインのある時点で、スタティックメモリがすべて使用され、ダイナミックメモリから256 KBがレンダリングオブジェクトに使用されているとします。この時点で残っているのはダイナミックメモリ256 KBで、メモリヒープは図2のようになっています。
上で説明した条件下でのメモリヒープの例
OSからのメモリ割り当ては32 KB単位で行われるので、プレーヤーは最初のオブジェクトに64 KBを、2番目のオブジェクトに32 KBを割り当てます。このときメモリヒープは図3のようになっています。
上で説明した条件下でのメモリヒープの例
160 KBを消費する3番目のオブジェクトを作成します。このときメモリヒープは図4のようになっています。
上で説明した条件下でのメモリヒープの例
最初の2つのオブジェクトを削除します。しかし、解放された96 KBは次の2つの方法で再使用できます。32 KB以下の3つのオブジェクトに割り当てる。
上で説明した条件下でのメモリヒープの例
上の例は、デバイスがプレーヤーにダイナミックメモリを提供する場合にのみ有効です。スタティックメモリヒープの場合は、32 KB単位ではなく、必要な量のメモリが割り当てられます。したがって、新しいオブジェクトに必要なメモリのサイズがスタティックメモリヒープで解放されたメモリ量以下でなければ、メモリを再使用できません。
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
また、Flash Lite と SVG-T、それぞれのフォーマットの基礎概念を紹介し、これらのテクノロジーの推奨使用例などについても解説します。1 プロファイルや他の Macromedia オーサリングツールが提供する、高度な機能性、ならびにリッチインタラクティブマルチメディア機能に至るまでをサポートし、サービス運営者、端末メーカー、ODM の方々の幅広いニーズにお応えしています。これまで、パートナーの方々からは、携帯電話に実装するコアエンジンを一本化したいという意見をお寄せいただいていました。1 がモバイル SVG-T をサポートすることによって、テクノロジー実装が簡素化でき、次のようなメリットが生まれます。
2 つのベクターグラフィックエンジンを端末機種に実装する必要がなくなり、全体的なコードサイズや BOM コストを節約
2 つのコード体系を移植する手間をカット
端末上のアプリケーションを複数のプレイヤーと統合する手間をカット
多数のベンダーと協同する際に発生しがちなコストを節約
ハードウェアの観点から見た場合、Flash Lite with SVG-T は、携帯電話上に常駐するコアプレゼンテーション層として端末上のあらゆるアプリケーションを実行するために利用できます。したがって、端末メーカーは単一のエンジンを、マルチメディアメッセージングサービス (MMS) クライアントや、リッチコンテンツのブラウジング、ユーザーインターフェイス、画面背景、スクリーンセーバー、呼び出し音、アプリケーションのあらゆるプレゼンテーション、などといったリッチメディアコンテンツのために利用できます。したがって、Flash Lite エンジンは、端末上のあらゆるアプリケーションと統合できます。1 フォーマットに加え、SVG-T フォーマットのサポートを追加したのは、携帯端末上に 2 つの別々のレンダリングエンジンを実装する手間を省くためです。1 が提供するリッチマルチメディア機能の両方をサポートできます。SVG-T はベクターグラフィック、画像、テキストをサポートしているものの、JavaScript などの補助テクノロジーを利用しない限り、インタラクティビティや音声を追加することができません。なお、これらの補助テクノロジーを統合 / オーサリングするための標準的な手法が確立されていないことが問題点として挙げられます。1 はスクリプト操作やリッチインタラクティビティ、音声などをサポートしています。
完全なプラットフォーム
このテストスィートには、手動もしくは自動で実行することができる 1000 以上ものテストが含まれており、端末機種が完全に Flash Lite 1
1 のスペックと互換しているかや、Flash Lite コンテンツが端末機種を問わず、問題なく再生できるかといった事柄を容易に検証できます。Macromedia がこのテストスィートを開発するに至ったのは、Java のような既存実行環境が、データを解析する際に問題を抱えていることが発端となっています。このような互換性の問題がデベロッパーに与える影響を考慮して、Macromedia では、携帯端末が数々の動作確認テストに合格し、Flash Lite 規格に適合していることが確認されるまで、Flash Lite 対応機種が出荷されないような体制を敷いています。このような条件を設定することで Macromedia は、デベロッパーの方々がさまざまな携帯機種やプラットフォームに対して、常に一貫したコンテンツを提供できるようにしています。また、これらの体制は、開発作業やテスト作業に必要な時間を大幅に短縮する効果もあります。また、SVG-T フォーマットに定義されていない機能 (グラデーションなど) が追加された場合、フォーマットの互換性に関するさまざまな問題が、コンテンツデベロッパーだけでなく、メーカーやサービス運営者の方々に対しても生じます。この互換性の問題は、各種ブラウザにおける HTML レンダリングの違いを思い浮かべると分かりやすく、これまで数多くのデベロッパーがブラウザの実装方法やレンダリングテクニックの違いによって、HTML のレンダリングに頭を痛めてきました。この一貫性こそが、Flash が従来の PC 上においてスタンダードとして認識されるようになった一番の理由といえます。Flash Lite は、PC 上の Flash 同様に、アプリケーション環境やモバイルオペレーティングシステムなどの違いを問うことなく、一貫したモバイル体験を提供することができるプラットフォームです。SVG-T フォーマットは、テキストを入力する機能や、サーバー接続の呼び出し、埋め込み音声といった機能をサポートしていません。1 は SVG-T と異なり、充電池の残量や、GPRS との接続性、電波状況、時計、バイブレーターなどといった、各携帯端末のコア情報にアクセスすることもできます。
著者について
お問い合わせ
不正コピー防止について
著作権と商標について*
当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2009年7月14日更新)にご同意いただいたものとみなされます。
記事のアーカイブ*
ユーザグループの検索*
ユーザグループについて*
そして、このリッチな体験の一部となるのがサウンドです。事実、サウンドはアラート、リングトーン、オーディオキュー、そして様々なエンターテイメントプログラムでのバックグランドミュージックを提供し、携帯デバイスの不可欠な要素となっています。1 でサウンドを使用するための工夫された手法で、デスクトップで Flash を使用する場合にも活用できます。このテクニックによってデジタルオーディオに関連するファイルサイズを最大 70% 削減できます。さらに、シンプルで短くループするオーディオピースの場合と比較して、はるかに多様なオーディオによる体験を提供できます。このテクニックは、長めのバックグランドミュージックトラックを必要とするゲームなどの制作で特に役に立ちます。事実、必要なミュージックトラックが長ければ長いほど、このテクニックを使用するメリットは拡大します。サイズや処理能力が足かせとなり、現時点では、すべての Flash 対応携帯デバイスがデジタルオーディオをサポートしているわけではありません。しかし、この記事が発表される頃までには、新機種の携帯デバイスのほとんどがより優れたハードウェア (スピーカー)、より多くのメモリ、より高速なプロセッサを採用してデジタルオーディオをサポートしているはずです。そして、次のバージョンの Flash Lite はこの進化するテクノロジを最大限に活用し、さらにリッチなモバイル体験をもたらすと私は確信しています。
この記事に必要なもの
このチュートリアルを進めるには、次のソフトウェアとサンプルファイルをインストールする必要があります。
チュートリアルとサンプルファイル
この記事のために必要な予備知識
これまでは MIDI が携帯デバイスにおけるサウンドの標準フォーマットでした。このフォーマットは非常に軽量であるものの、品質や生成可能な数量およびタイプに関しては大きな制約があります。MIDI によって生成されたサウンドは、携帯デバイスのチップの一部であるウェーブテーブルによって決定されます。デジタルサウンドと違い、MIDI ファイルにはサウンドは一切含まれず、携帯デバイスのチップに存在するサウンドをトリガーとするコマンドが含まれています。一方、デジタルオーディオにはレコーディング自体が組み込まれており、ライブバンドから話し言葉、周囲の音響までどのようなものでも可能です。デジタルオーディオの品質は、記録 / 格納時のサンプリングレートによって異なります。MP3 デジタルオーディオフォーマットが一般的です。ビット、つまりサンプリングレートが高ければ高いほど、品質は向上します。ただし、ビットレートが高いと、ファイルサイズも増大します。この記事では、デジタルミュージシャンによって使用されるテクニックを紹介します。これには、デジタルオーディオのレイヤー化が含まれます。Flash では、書き出された SWF ムービーのファイルサイズを増やすことなく ビジュアルアセットを再利用、つまりリサイクルできますが、オーディオでもちょうど同じことができます。サウンドを構成するの個別のエレメントやパート (ベース、ドラム、ホーンなど) を読み込み、それぞれのレイヤーに配置し、Flash でサウンドツールのいくつかを使用することで、展開と変化のあるサウンドトラックのイリュージョンが作成できます。このテクニックを使用すると、デザイナーは、制作においてビジュアルに見合ったミュージックを好きなように柔軟に編曲することもできます。このテクニックを利用するには、ミュージックトラックのすべてのエレメントを用意することが必要です。近頃では、コンポーネントに分割済みのミュージックのライセンスを取得したり、時間がある場合は、人気の音楽ソフトウェア製品を使って自作のミュージックを制作することもできます。
レイヤー化されたサウンドファイル
zip アーカイブをダウンロードして、解凍します。wav" という名前のファイルが入っています。fla" ファイルを開きいて中を見ます。図 1 にあるようなイメージがステージ上にあるはずです。ファイルには作品のバイオリン、ブラス、ストリング、ピアノの 4 つのパートが含まれています。[ライブラリ] に行けば、各パートを個別に聞くことができます。これらのテンプレートはすでに適切な画面サイズに設定されています。fla" ファイルには作品の 4 つのパートが含まれています。この作品の各パートは個別に記録されて最適化され、独立したサウンドファイルとして Flash に読み込まれています。すべてのサウンドがそれぞれのレイヤーで適切にループし、互いにミックスするには、4 つのサウンドファイル (他に、このテクニックを使用するすべてのサウンドファイル) の長さまたは比率 (ミリ秒、もっといいのはサンプルの正確な数) のいずれかが互いに同じであることが必要です。この例では、4 つすべてのパートは同じ長さになっています。カラーのブロックはタイムライン上のインスタンスで、そのパートが演奏されることを表しています。Flash アプリケーションでムービーを再生すると各パートが再生されるとき、サウンドを聴きながらこれらを確認することができます。各パートにはそれぞれのレイヤーがあり、同じキーフレーム (16) で始まります。ただし、silent レイヤーは例外で、これについては後ほど説明します。ミュージックのすべてのエレメントが同じキーフレームでスタートすることが非常に重要です。次でさらに詳しく説明します。図 2: タイムライン上では各パートがそれぞれのレイヤーを持ち、同じキーフレームでスタートします。Flash Lite に書き出す場合、サウンドをすぐに始めないで空のフレームを使用してデータをバッファするのが最善の方法です。遅いプロセッサを持つデバイスではコンテンツの表示を始めるのに 1~2 秒かかります。このため、音声をすぐにスタートすると、その最初の部分がカットされる可能性があります。
サウンドのエンベロープポイントの設定と編集
wav" という名前で 10 回繰り返されるように設定されていることがわかります。] ボタンをクリックして [エンベロープの編集] ウィンドウを開きます。[フレーム] ボタン (右下) をクリックして、タイムラインスケールが秒ではなくフレームで表示されるように変換します。
そのウィンドウのズームボタンを使って、このパートに適用されている 6 つのエンベロープポイントを表示するまでズームアウトします (図 3 を参照)
図 3: エンベロープポイント (小さい四角) を適用して、サウンドの音量を操作します。サウンドのウィンドウで小さな四角で表示されているエンベロープポイントは 音量 ポイントです。これらのポイントをドラッグすることで、音量エフェクトを作成できます。各サウンドレイヤーの音量レベルを調整して、適切な音量ミックスを作成できます。サウンドウィンドウ内の 2 つのウィンドウは、右および左のチャンネルを表しています。
パンなどのエフェクトを作成する必要がある場合を除いて、どちらのウィンドウにもアクションが反映されるように設定する必要があるでしょう
wav" の 2 つのインスタンス (ループ) の後に、エンベロープポイントを使った短いけれど段階的なフェードアウトがあります。このパートは 5 つめのインスタンス (ループ) の初めにくるまでミュートになっています。5 つめのインスタンスがスタートするこの特定のポイント (図 4 を参照) で最大までズームインします。このポイントはフレーム 399付近です。
今示しているビューと時間でのビューの間で切り替えができることを思い出してください (ウィンドウの下のズームボタンの右にある 2 つのボタン)
エンベロープポイントは、5 つめのインスタンス (ループ) のスタート時に厳密に設定されています。このテクニックを使って確実に滑らかなミックスを作成する際には、これを厳密に設定することが必要です。図 4: 最大レベルまでズームインして、エンベロープポイントを厳密に操作します。次に、他のレイヤーとそれらにエンベロープポイントがどのように適用されているかを確認します。たとえば、バイオリンのエンベロープポイントは最大に設定されていません。バイオリンの音量がミックス全体より大きくならないようにするためです。このミックスは多くの可能性のうちの 1 つでしかありません。たとえば、ストリングだけでミュージックをスタートし、次にブラスのパートが入る、なども考えられます。作品のパート数が多ければ多いほど、より多様なミックスの可能性が考えられます。しかし、使用できるレイヤー数には制限があります。また、現時点では、どのサウンドにも特定のキーフレームで 8 つのエンベロープポイントしか適用できないということも頭に入れておいてください。このため、上手に効果的に使用することをお勧めします。新規キーフレームでサウンドの新規インスタンスを開始すると、当然、新しい 8 つのエンベロープポイントを設定できます。
ストリームサウンドとイベントサウンド
この手法の利点は、Flash Lite がサウンドファイルをインスタンスとして扱うという点です。Flash Lite はすべて個々のコンポーネント (サウンドファイル) をロードした後、グラフィックを扱うようにサウンドファイルも扱います。このため、各サウンドファイルをそれぞれのレイヤーで何度ループしても、それらのサウンドファイルをループするための追加のファイルスペースをタイムライン内に必要とせず、また、対応するアニメーションに、サウンドレイヤーを結びつけることこともありません。event 同期設定を使用すると、サウンドファイルはグラフィックとは別に実行されます。遅いプロセッサを持つデバイスでは、様々な問題にぶつかることがあります。メモリが不足する場合には、Flash は同じフレーム内のすべてのレイヤーを同時に読み取ることができません。この結果、サウンドレイヤーが互いに他と同期しないという事態が起こります。唯一 stream に設定されている silent レイヤーは、このきわめて小さなサウンドを使用し、他のミュージックレイヤーの前にスタートします。stream に設定されているサウンドでミュージックをスタートすると、レイヤーは同時にロックされます。
皆さんが今後このテクニックを使う際に利用できるように、このファイル ("silent
レイヤー化されたすべてのサウンドで stream を同期設定として使用するのであれば、アニメーションはタイムラインに結び付けられます。この設定では、Flash Lite は 1 つのチャンネル上の 1 つのサウンドファイルとしてサウンドを書き出したり、読み取んだりします。すべてのサウンドファイルが同時に一緒にロックされるため、silent サウンドは必要ありません。ただし、この設定ではコンポーネントをループされたインスタンスとして使用するため、小さなファイルサイズのメリットは活かされません。また、stream を使用する場合、ムービーに必要なだけのフレームがある限りミュージックは再生されます。event 設定と違い、stream ではオーディオを含めるのに必要なだけのフレームがなくなった場合、あるいはムービーの再生を停止するアクションがあった場合にサウンドを停止します。圧縮のためには、グローバル設定を使用するか、あるいは各サウンドファイル個別に圧縮率を設定できます。ベースサウンドのように低周波数のサウンドはきわめて効率的に圧縮されます。