Live Framework CTP
前回 はLive Frameworkの概要を簡単に紹介しました。今回はLive Framework CTP(Community Technology Preview)の内容について開発をはじめる前に確認し、そして開発の準備まで行います。執筆時点では2009年の1月末にCTPの内容が更新されています。
現在のLive Frameworkは、Live ServicesのLive Meshを利用した開発が可能と考えるとよいかと思います。そして以下のサービスや開発ツール等が提供されています。
Live Framework Developer Sandbox
Live Framework Client
Live Framework SDK
Live Framework Tools for Microsoft Visual Studio
このうちDeveloper SandboxとLive Framework Clientについてまず紹介します。
Developer Sandbox
Live Framework CTPでは現在、Live Meshサービスへアクセスが可能です。Live Mesh については本連載第1回 で紹介しました。ただし、Live Framework CTPからアクセスできるのはこのLive Mesh Betaサービスではなく、開発者用にBetaサービスとは異なるLive Framework Developer Sandbox(図1 )が用意されています。
図1 Live Framework Developer Sandbox
図1 のようにほぼLive Mesh Betaと同じ画面ですが、TECH PREVIEWの表記のほかに、タブに「App」が追加されています。このAppは、現在Live Servicesでもっとも革新的で、おもしろい部分だと思います。
さっそく新しいAppの内容を簡単に確認してみましょう。Live Mesh BetaではLive Mesh上でアプリケーションの実行はできませんでした。この開発者用Live Meshではアプリケーションの実行が可能になっています。図2 はサンプルアプリケーションをLive Desktop上で実行したところです。
図2 Live Desktop上でアプリケーションの実行
このアプリケーションはLive Desktop上だけでなく各デバイス上でも実行できます[1] 。そしてフォルダ・ファイルと同様に、アプリケーションの持つデータはもちろん、アプリケーション自身も同期・共有が可能です。このアプリケーションはWebアプリケーションとデスクトップアプリケーションの特長を持っており、Mesh-Enabled Web Application と呼ばれています。このアプリケーションはSilverlightを使用しており、Live Frameworkを利用して開発が可能です。詳しくは今後本連載で扱いたいと思います。
Live Framework Client
Live Framework Client(図3 )は、Live Mesh Betaのデバイス上にインストールするアプリケーションに相応するものです。Live Mesh Betaではエクスプローラと統合したフォルダ・ファイルの同期処理やLive Remote Desktopの機能を提供していましたが、Live Framework Clientはこれらの機能は制限されており、使用できません。開発用にアプリケーションの同期とクライアントLive Operating Environment(本連載第2回 参照)として機能します。
図3 Live Framework Client
Live Framework Clientがインストールされていると、前述のようにLive Mesh Betaのフォルダ同期のようにアプリケーションの同期が行われます。Live Desktop上でアプリケーションをインスタンス化していると、PCのデスクトップ上にアプリケーションのショートカットが作成されます。ショートカットからアプリケーションを実行すると図4 のようになります。
図4 デスクトップからアプリケーションの実行
図4 は先ほどLive Desktop上で実行したアプリケーションです。アプリケーションのデータが同期されていることがわかります。また誰と共有しているか、どのデバイスと同期しているかや、更新情報については、アプリケーションウィンドウの右側に付いているMesh barからわかります。アプリケーションの実行時には、オンラインである必要はありません。オンラインになった時点でほかのデバイスと同期が行われます。
Live Framework CTPの利用
Live Framework CTPの利用は無償ですが、現在利用にはいくつかの登録が必要です。必要な作業を順にみていきましょう。
Live Framework CTP Microsoft Connect
Live Framework CTPの利用は招待制になっています。Invitation codeと呼ばれる文字列をMicrosoft Connect内のプログラムに登録することで取得します。
最初にMicrosoft Connect 内のAzure Services Invitation Program に参加します。図5 にこのプログラムの参加画面を示します[2] 。Live Frameworkのみを対象にしていませんので、記入および選択する項目の6番目では興味のあるサービスとして「Live Services」を選択しておきましょう。
図5 Azure Services Invitations Program
すぐにInvitation codeは手に入りません。別途メールが(招待されれば)送られてきます。これには少し時間を要します[3] 。
Azure Services Developer Portal
入手したInvitation codeはAzure Services Developer Portal で設定します。Azure Services Developer Portalでは、Windows AzureおよびLive Services用のプロジェクトの作成と管理を行います。
初めて利用する場合、このサイトもWindows Live IDアカウントによるサインインとAzure Services Developer Portal用のアカウントの作成が必要です(図6 )( ※4 ) 。
図6 Azure Services Developer Portal アカウントの作成
[4]
アカウントの作成時に国と言語を選択しますが、United StatesとEnglishを選択している、またはLive IDアカウントの国情報がUnited Statesでなければ、以降の手続きでサービスを利用できない不具合を筆者は聞いています。もし手続きにつまずいたら一時的に情報を変更するとよいかもしれません。
アカウント作成時にInvitation codeの入力画面が出てきます(図7 ) 。受け取ったInvitation codeをここで入力しましょう。この作業は後からWebページ内の「Account」タブからも可能です。
図7 Invitation codeの入力
Live Framework Developer Sandbox
Azure Services Developer PortalでInvitation codeを入力すると、ようやくDeveloper Sandboxの利用が可能です。https://developer.mesh-ctp.com へアクセスしサインインしましょう(図8 ) 。
図8 Developer Sandbox サインイン画面
Live Framework Clientはデバイス画面の丸いプラスのボタンからダウンロードが可能です(図9 ) 。Live Mesh Betaのアプリケーションと共存は可能ですが、既にLive Mesh Betaのアプリケーションがインストールされている場合、下記のレジストリの設定が必要です。
キー:
HKEY_CURRENT_USER\Software\Microsoft\Live Framework Client
値:
名前
種類
データ
AllowSxS
DWORD(32ビット)値
1
図9 Live Framework Clientのインストール
インストール後、Live Framework Clientを実行するとタスクトレイにアイコンが表示されますので、そこからサインインが可能です(図10 ) 。
図10 サインイン ウィンドウ
SDKとTools
今回は開発しませんが、提供されているSDKとVisual Studio用のToolsを先に紹介しておきます。
Live Framework SDK
Live FrameworkはOSやプログラミング言語に依存はしていませんが、より簡単にLive Servicesへアクセスするために以下の3種類のライブラリが現在提供されています。
.NET Kit
.NET Frameworkを使用したプログラミングのためのライブラリ
Silverlight Kit
Silverlightを使用したマネージドコード
プログラミングのためのライブラリ
JavaScript Kit
JavaScriptを使用したプログラミングのためのライブラリ
SDKにはLive Framework Resource Browser (図11 )というアプリケーションも含まれています。Live Operating Environment(LOE)と対話するときにはHTTPおよびXMLまたはJSONを利用していました。Live Framework Resource Browserを使用すると、Live Mesh上のリソースへアクセスしLOEからの内容をAtom、JSON、RSSといった形式で直接確認することができます。デバッグやLive Frameworkの理解の手助けとなるでしょう。
図11 Live Framework Resource Browser
このほか、SDKにはドキュメント類および各種サンプルコードが含まれています。
SDKのダウンロードは、https://developer.mesh-ctp.com/Developers/Developers.aspx の「Downloads」から可能です(図12 ) 。ダウンロードはCTP利用の登録作業が完了している必要があります。
図12 Live Framework SDKのダウンロード
ダウンロードしたzipファイルの中身(Live Framework SDKフォルダ)は、「 %ProgramFiles%\Microsoft SDKs\」へ移動させておきましょう。
Live Framework Tools for Microsoft Visual Studio
少しだけ紹介したMesh-enabled Web Applicationを作成するため、Visual Studio用にLive Framework Toolsが提供されています。当然ながらVisual Studio(Visual Web Developer 2008 Express Editionも可)が必要となりますが、Mesh-enabled Web Application作成に非常に強力なツールです。インストールするとプロジェクト作成にMesh-enabled Web Applicationが追加されます(図13 ) 。
図13 Mesh-enabled Web Applicationプロジェクト
DHTMLによるMesh-enable Web ApplicationとVB.NETおよびC#を使用したSilverlightのMesh-enable Web Applicationプロジェクトの作成のほか、アプリケーションをビルドしてパッケージ化し、Live Mesh上への配置もサポートしています。
ダウンロードは、先ほどのSDKのダウンロードページまたは、Microsoft Connect内のページ から可能です。
今回はここまでです。次回からLive Frameworkを利用した開発をしていく予定です。