2010-07-21

Marketplaceへの道 その3

前回までバカみたいに原文を読もうとしていた「Windows Phone 6.5 Application Certification Requirement」ですが、普通に日本語版がある事を教えていただきました。
 
普通に..というか、トップページから「Register for the Marketplace 」をクリックして「WINDOWS® MARKETPLACE への登録」というページに進んで「プログラムに関する規約」をクリックすると出てきました。
 
 
アカウントの登録を後回しにしてたのが敗因でしょうか...
でも分かりにくすぎませんか、これ?  
 
気を取り直して、必要条件の中の 1.17. Hopper テストを行ってみます。
1.17. Hopper テスト
 
アプリケーションは、予期しない動作、ハング、またはクラッシュを発生させずに、2 時間に及ぶ Microsoft の Hopper テストを完了する必要があります。
Windows Mobile 6.5 に対応した新しいバージョンの Hopper があります。このバージョンは、Windows Mobile 6.0 および 6.1 でも動作します。必要な Hopper のバージョンは 2.0.24.4074 以降です。
Windows Mobile 6.0、6.1、および 6.5 用の AppVerifier は、こちらで入手できます。
また、フォーカス アプリケーションをカスタマイズして、Hopper を実行する前にデバイスに展開しておく必要があ ります。これにより、Hopper のメイン フォーカスをターゲット アプリケーション上に移動できます。フォーカス アプ リケーションの作成方法の詳細については、こちらを参照してください。
「Windows Mobile 6.0、6.1、および 6.5 用の AppVerifier」とありますが、ダウンロードするのは Hopperです。 あと 日本語版 PDF、「こちら」と書いておきながらリンク押せないような気がするんですが...?
 
ともあれ、 Hopperをダウンロード、インストールし、インストールフォルダの Professionalフォルダの中身ををエミュレータの適当な場所(\Hopper等)にコピーしてやります。
 
 
続いて、同じくインストールフォルダ内にある FocusAppフォルダを 適当な場所にコピーして Visual Studioで開きます。(2008だとプロジェクトの変換が必要でした)
FocusApp.cppの g_pszAppNameを今からテストしたいアプリのパスに書きかえてビルド、配置を行います。
 
// Adjust the following to suit your needs
#define SLEEP_TIMEOUT TEN_SECONDS
//TCHAR *g_pszAppName = TEXT("\\windows\\wmPlayer.exe");
TCHAR *g_pszAppName = TEXT("\\Program Files\\iHighwayViewer\\iHighwayViewer.exe");


 
FocusAppを実行すると SLEEP_TIMEOUTで指定した時間(初期値は 10秒)ごとにテスト対象のアプリが起動されます(既に起動していた場合はアプリが前面に表示されます)。
続けて Hopperを起動する事で、Hopperが前面のアプリに対してランダムな入力を続けるようになります。
 
この状態で 2時間耐えろという事らしいのですが、見ているとテスト対象のアプリが裏にまわった状態でも容赦なくキー入力を続けるので連絡先が登録されたり、意味不明のSMSを打とうとしたりする事が頻繁にありました。 SLEEP_TIMEOUTの時間はもう少し短めでもいいのかもしれません。
 
少なくとも実機では絶対に動かしたくないテストですよね。
 

2 件のコメント:

匿名 さんのコメント...

Hopper Test は専用のエミュレーターか端末を作成して実施するのが良いみたいです。作成方法はこちらで説明されています http://msdn.microsoft.com/en-us/netframework/bb964490.aspx

kazuaki さんのコメント...

こんばんは。情報ありがとうございます。

早速見てみました。
リスニングは大の苦手ですが、それでも動画で解説してくれると分かりやすいです。

エミュレータイメージを別に用意して Today画面やスタートメニューを極力シンプルにする事で他のアプリが前面に来にくくするという事ですね。
また、FocusAppや Hopper Testの置き場所の例等も参考になりました。

この後でもう一度 Hopper Test試してみます。