Windows Phoneアプリケーション開発入門

第38回 Pictures HubとMusic + Videos Hubにアプリケーションを統合してみよう!(1)

この記事を読むのに必要な時間:およそ 3 分

Pictures Hubからアプリケーションを起動できるようにする

さて,同様にPictures Hubのトップページから特定のWindows Phone OS 7.1向けアプリケーションを起動することができます。こちらもWMAppManifest.xmlを編集します。

WMAppManifest.xmlのApp要素に子要素を追加する必要があります。まずはソリューションエクスプローラー開いて頂き,Propertiesフォルダを開きます。

画像

蛍光ペンで線を引いているWMAppManifest.xmlを開きます。App要素の子要素として,以下のようにExtensions要素を追加します。Extensions要素が既に定義されている場合は,Extension要素を追加するだけで問題ありません。なお,ExtensionNameやConsumerIDの値は固定となっていますので,変更しないでください。

<Extensions>
      <Extension ExtensionName="Photos_Extra_Hub" ConsumerID="{5B04B775-356B-4AA0-AAF8-6491FFEA5632}" TaskID="_default" />
</Extensions>

WMAppManifest.xmlのどこにExtensions要素を追加してよいのか分かりづらいという方がいるかもしれません。例としてWMAppManifest.xmlの全文を記載したいと思います。

<?xml version="1.0" encoding="utf-8"?>

<Deployment xmlns="http://schemas.microsoft.com/windowsphone/2009/deployment" AppPlatformVersion="7.1">
  <App xmlns="" ProductID="[00000000-0000-0000-0000-000000000000}" 
       Title="PictureHubWP71Test" RuntimeType="Silverlight" 
       Version="1.0.0.0" Genre="apps.normal" 
       Author="author" Description="" Publisher="PictureHubWP71Test">
    <IconPath IsRelative="true" IsResource="false">ApplicationIcon.png</IconPath>
    <Capabilities>
      <Capability Name="ID_CAP_GAMERSERVICES"/>
      <Capability Name="ID_CAP_IDENTITY_DEVICE"/>
      <Capability Name="ID_CAP_IDENTITY_USER"/>
      <Capability Name="ID_CAP_LOCATION"/>
      <Capability Name="ID_CAP_MEDIALIB"/>
      <Capability Name="ID_CAP_MICROPHONE"/>
      <Capability Name="ID_CAP_NETWORKING"/>
      <Capability Name="ID_CAP_PHONEDIALER"/>
      <Capability Name="ID_CAP_PUSH_NOTIFICATION"/>
      <Capability Name="ID_CAP_SENSORS"/>
      <Capability Name="ID_CAP_WEBBROWSERCOMPONENT"/>
      <Capability Name="ID_CAP_ISV_CAMERA"/>
      <Capability Name="ID_CAP_CONTACTS"/>
      <Capability Name="ID_CAP_APPOINTMENTS"/>
    </Capabilities>
    <Tasks>
      <DefaultTask  Name ="_default" NavigationPage="MainPage.xaml"/>
    </Tasks>
    <Tokens>
      <PrimaryToken TokenID="PictureHubWP71TestToken" TaskName="_default">
        <TemplateType5>
          <BackgroundImageURI IsRelative="true" IsResource="false">Background.png</BackgroundImageURI>
          <Count>0</Count>
          <Title>PictureHubWP71Test</Title>
        </TemplateType5>
      </PrimaryToken>
    </Tokens>
    <Extensions>
      <Extension ExtensionName="Photos_Extra_Hub" ConsumerID="{5B04B775-356B-4AA0-AAF8-6491FFEA5632}" TaskID="_default" />
    </Extensions>
  </App>
</Deployment>

ツールバーにある[ビルド]からリビルドを実行しておいてください。アプリをデプロイし,Pictures Hubを確認すると,アプリケーション一覧にPictureHubWP71Testが追加されているのが分かります。

画像

PictureHubWP71Testの文字がラーメンの画像と被ってしまって,文字が読みづらくなっていますがご了承ください。

さいごに

今回は簡単にPictures HubとMusic + Videos Hubのアプリケーションリストに表示する方法ご紹介させて頂きました。Pictures Hubにはカメラアプリや画像処理系のアプリを統合し,Music + Videos Hubには音楽再生プレイヤーアプリや動画サイトを見るアプリと統合するとよいかもしれませんね。

次回は,Windows Phone OS 7.0とOS 7.1それぞれの場合における,Pictures Hubでの共有と編集の統合の方法についてご紹介したいと思います。

著者プロフィール

和田健司(わだけんじ)

1982年10月12日生まれ。大阪で働くプログラマ。Microsoft MVP for Device Application Development(Jul 2010 - Jun 2011)。Windows Mobileに傾倒し今に至る。Windows Mobile向けのTipsを書いています。iPhoneアプリ開発を始めました。嫌いな食べ物はカレー。

URL: http://ch3cooh.jp/
Blog: http://d.hatena.ne.jp/ch3cooh393/