Hi-Farm blog

2007年05月24日 02:06

Apollo mini camp 行ってきました。(メモ書き)

Apollo mini camp 5/23 僕のメモ

行ってきました。Apollo mini camp@Tokyo。
で、僕のメモってきたことを公開してみます。
間違いがあったらごめんなさいね。

--------------------------Mike

Apolloの特徴と要点

silverlightとは違う。 - ベースになる技術が違う。

サンプル
finetune.com
デスクトップアプリケーションとして作れば、ブラウザとは違い、単独のアプリケーションとして動作しているので、音楽を流しっぱなしにするなどが可能。
(ブラウザの場合、タブやウィンドウから該当するページを探し出す手間がかかる、または、何らかの原因でブラウザがダウンした場合に影響を受けてしまう。)

-> Apolloならローカルアプリなので、iTunesへのアクセスも簡単。

Google Mapのサンプル

ローカルのvCard形式のデータにアクセスし、ドラッグアンドドロップでアイコンの表示が可能。

Fresh - RSSリーダー。
注目すべき点は、これはHTML+JSで作られているということ。


・ASとJSの連携は、参照を持たせれば良いだけなので簡単に連携可能。

今後、
Online - Offlineの検知
Network(ソケットなど)
の各種APIを提供。

サンプル - 洗濯機の中でグーグルのサイトが回っているサンプル。

・textmate - テキストエディタ。
Mike も Danielも使ってた。
日本語入力に問題。

Flex BuilderとSDKでの制作方法。

プラン。
2007年
夏 beta版
秋 1.0リリース
しばらくは、
インストーラーなどは英語表記だが、アプリケーションでは日本語が問題なく使える。

2008
Apollo 1.x
この頃にインストーラー含め、日本語環境への対応が完全になる。


参考サイト:
video.onflex.org
動画で色々話しています。

MXNA
weblogs.macromedia.com

Mike Chambersのブログ。


-------------------------------Daniel
主に、夏に公開予定のbeta版。

beta版で追加される主な機能。
1OSレベルでのドラッグアンドドロップ/クリップボードの対応。
2PDFサポート。
3HTMLでの不透明度の調整。
4NativeFile Dialogs
5マルチウィンドウ。(一つのアプリケーションで複数のファイルを開く事が可能。)
6Online/Offline。
7File Icons -> アプリケーション内で、OS(Finderなど)にあるアイコンを表示する事が可能。(現在はFlexコンポーネントのアイコン。)
8File extension Registration - 理解できてません。レジストリとかそういうことでしたっけ?

サンプル。
1,は、新たに追加されるAPI、transferableDataクラスに搭載されるようです。
2は、でPDFファイルを指定するだけ!!

salsa


質疑応答:

ローカルDBヘのアクセスは可能か?(WindowsのODBCみたいなやつ)
ー 1.0では不可能。ミドルウェア経由では可能。あるいはactionscript driverとかでしょうか。(ちょっと聞き逃してしまいましたので間違っているかもしれません。)

Apolloのバージョンがあがった場合、既存のアプリケーションとの互換性はどうなる?
ー 互換性ありでしょう。バージョンアップによりテストしなおすということはない。

Apolloで作ったHTML内のswfは動くようになるか?(現状では、で表示させてもその中に或るswfが表示されないということがあります。というか、僕が作っているときも同様の問題がありました。)
ー1.0では解決します。

セキュリティーは?
原則、OSのセキュリティーレイヤーにのる。
ので、ユーザーが操作可能な場所ならアプリケーションからのアクセスが可能。

ちなみに、
Flash Player 9 の普及率は既に85%らしい。(どこでのシェアかは未確認。)


感想としては、
ApolloはWebの技術、特に、サーバーサイドではなく、クライアントサイドの技術でローカルアプリケーションを作成可能ということで、Webの次の形が見えるものではないかと思い、大注目をしているのですが、セキュリティーの問題など、正式にリリースするものの品質を考えると、Webの技術だけではすまないところもあり、
Apolloのメリットを実感し、普及するまでに良質のアプリケーションが作成されないと、もしかするとApolloが廃れてしまうのでは?と心配しています。
ユーザーがアクセスできる領域にはアプリケーションからアクセスできるということは、ウィルスのようなものを作成することも可能であるし、ユーザーの大切なデータをいじってしまう可能性もある。
特に今の段階ではセキュリティーレベルは低いので、現段階でApolloを使っておかしなことをするコンテンツが広がってしまうと、Apollo自体敬遠される可能性もある。

ただ、Web系の開発者にとって、Apolloの存在は大きいと思うので、僕もApollo普及に小さな力ながら協力したいなあ、なんて思ったのであった。
てか早くサンプル作らないといけないですね。

ちなみに、今回の来場者プレゼントは、
Web Designingの最新号+ Apollo Tシャツ、Apollo ポスター、Apolloステッカーでした。
Tシャツは着ないからいらんだろ、と思ってましたが、あまりにも多数のTシャツを用意していたので、流れるまま、僕もTシャツを持って帰ったのでした。。。。
ああ、日本人的。

2007年05月18日 18:18

HTMLControlクラス

Apolloをちょこちょこといじりはじめているのですが、
HTMLを表示するActionscriptのクラス、HTMLControl クラスで、リンクをクリックするなどで、locationが変わるとき、こんな順番で処理されている模様。

1 リンクをクリック、あるいはURLを再設定する。(dispatchEvent({type: "locationChange"})の発生)

2 HTTP接続の開始

3 DOMの読み込み(空のDOMツリーが作成される?)(dispatchEvent({type: "domInitialize"})の発生)

4 HTMLを読み込み、必要な外部データを読み込もうとする。(ファイルを読み込むごとに、dispatchEvent({type: "htmlRender"})の発生)

5 全ての読み込みが終了(dispatchEvent({type: "complete"})

ってな順番みたいです。

もし間違ってたらご指摘下さい。

2007年03月31日 22:16

Apolloのユーザーエージェント

たいした事ではないのですが、Apolloで簡易ブラウザーを作った時のメモ。

phpinfo();で調べました。
僕の環境は、Mac OS X 10.4 Tiger , Intel Mac(初代MacBook 白) です。
HTTP_REFERER : appp-resource:/b.swf 
HTTP_USER_AGENT : Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Safari/419.3 Apolllo/1.0.Alpha1
でした。

ちなみに、ParallelsのXP上では、
HTTP_USER_AGENT : Mozilla/5.0 (Windows; U; en) AppleWebKit/420+ (KHTML, like Gecko)
Safari/419.3 Apollo/1.0.Alpha1

でした。
実際のWin上ではどうなんでしょうね?

2007年03月22日 20:43

Apolloはまり日記(ADT:パッケージ化する)1

Apolloのセットアップ、というか、
amxmlcが使えた!と喜んでいたのもつかのま、次はパッケージするコマンド、
adtではまってしまってたのです。

確かにサンプルをコピペして、疑わなかったのがわるかったのですが、
sample-app.xmlのこの部分が良くなかったようだ。

×:
<rootContent systemChrome="standard" transparent="false">
HelloWorld.swf
</rootContent>

○:
<rootContent systemChrome="standard" transparent="false">HelloWorld.swf</rootContent>

改行。。。。
常識と言えば常識ですが。

2007年03月20日 16:06

MacBookにApollo SDKを入れてみました。

MacにApollo SDKを入れてみましたよ。
環境:MacBook 2GHz Intel Core Duo , Mac OS X 10.4.8

で、既にFlex SDKはインストール済み。

Flex SDK
/Developer/SDKs/flex

Apolloはここにインストールします。
/Developer/SDKs/apollo

Finderはこんな感じになります。

ApolloSDKや、FlexSDKがない!という場合は、
http://labs.adobe.com/
あたりからたどって行きましょう。

http://labs.adobe.com/technologies/apollo/ の中央あたりにある、
『Downlod and Discuss』の
「Get the Apollo Runtime」、「Get the Apollo SDK and Developer Downloads」
から、
「apollo_mac_alpha1_031907.dmg」と「apollo_sdk_alpha1_031907.zip」を
ダウンロードしましょう。
Adobeの登録がまだの場合は済ませておきましょう。

Runtimeのインストールは、「apollo_mac_alpha1_031907.dmg」をダブルクリックをして、
インストーラーを使い、流れのままにインストールして下さい。

これでサンプルを見る事が可能です。


次に、SDKで開発環境を作りましょう。


僕の場合は、
Flex SDKがある場所と近い場所にしました。

次に、ダウンロードしたapollo_sdkを解凍しましょう。

すると、「apollo_sdk_alpha1_031907 Folder」ができます。

次に、
runtimeフォルダに「Adobe Apollo.dmg」というファイルがあるので、そのアイコンをダブル
クリックします。

すると、

ができるので、赤枠のフォルダを、

にドロップします。
Adobe Apollo.dmgはもういらないので捨ててもいいでしょう。

で、apolloの説明書とも言えるファイルが、Apollo_docs/Documentation.html
(別途ダウンロードのこと)にあるのですが、unzipとかいまいちよくわかって無かったので、
僕は手動でファイルを入れて行きました。


で、ApolloSDKは、Flex SDKの追加機能みたいなものらしいので、

・Flex SDKに今回ダウンロードした、ApolloSDKのファイルを追加する

ということで良いです。Version.asとmxmlc.jarは上書き確認されるので、「はい」としてくだ
さい。

で、この作業を手動でしました。

Flex SDKのフォルダを「apollo」へ名前変更し、

下の各フォルダにApolloSDKのファイル/フォルダを追加しました。

こうやって(もっと効率いい方法あるのとは思うんですけどね。。)できたapollo
フォルダを、今回は、
/Developer/SDKs/以下に置く事にします。

・上記の領域にファイルを移動

次に、bin/amxmlcにパスを通す。

Terminalを開き、

nano /etc/profile とでも入力し、パスを設定。

この様にパスを通します。

保存後、
source /etc/profile
します。

これでapolloでのコンパイルが可能になりました。

確認してみましょう。

クリエイティブコモンズで配布されている、
http://labs.adobe.com/wiki/index.php/Apollo:Books:Apollo_for_Adobe_Flex_Developers_Pocket_Guide
の20 - 22ページにあるサンプルを作成し、

HelloWorld-app.xml
HelloWorld.mxml
で保存します。

Terminalからこのディレクトリに移動し、
このようになれば設定完了です。

もっといい方法があると思いますので、ご教授いただけると幸いです。

2007年03月19日 00:22

Apollo本のPDFが!!

今までダウンロードできなかったPDFがダウンロード可能です!
http://labs.adobe.com/wiki/index.php/Apollo:Books:Apollo_for_Adobe_Flex_Developers_Pocket_Guide