開発上の課題

機能が固まったところで、実装段階で生じそうな課題をリストアップして、先に解決策を考えておきます。

加速度センサーの処理

・加速度センサー非対応の端末への対応

前回までの「一日一句」アプリでは、ネットワーク接続を前提とするMicrosoft Translatorを用いた翻訳機能を、ネットワーク接続の設定をオフに変更している端末で使った時、技術認定の要件のページにある、「5.1 アプリケーションの信頼性 > 5.1.2 アプリケーションを閉じる」の「ユーザーにわかりやすいエラーメッセージを提供」することが、ひとつの課題でした。ただ、この接続オフの状況は、IS12Tの設定を変更すれば再現できました。

ところが今回は、加速度センサー非対応の端末について考慮する必要があります。しかし、IS12Tに加速度センサーが標準で搭載されているため、テストできません。そこで、MSDNにあるとおり、加速度センサーがロードされた時に、デバイスが加速度センサーをサポートしていない場合、メッセージ表示するコードを追加することにします。
→参照:方法: Windows Phone の加速度センサーからデータを取得する

サウンドファイルの扱い

・サウンドの扱い

サウンドの再生処理を実装するにあたって、サウンドに関する認定条件も確認しておきます。
「特定のアプリケーションの種類についての追加の要件」の中の、「6.4 Music + Videos ハブのアプリケーション」「6.5 メディアを再生する Music + Videos ハブ以外のアプリケーション」がサウンドに関わる条件です。
このアプリでは、Music + Videos ハブは使いませんし、SilverlightからXna.Framework.Audio 名前空間のSoundEffectクラスを使って単純に再生させるだけですので、抵触することはなさそうです。SilverlightからXna.Framework.Audioを利用する方法については、MSDNコードレシピを参照してください。
→参照:[XAML/VB] Xna.Framework.Audio を用いて Windows Phone で複数のサウンドを再生する

・サウンドとxapファイルのサイズ

前述のとおり、このアプリには、複数のサウンドファイルを含めることになります。
そのため、アプリのダウンロードサイズが大きくなります。マーケットプレイスでは、アプリの説明ページの左下にダウンロードサイズが表示されますが、確認しないユーザーもいるかもしれませんので、アプリの説明の中にも、サイズを明記することにします。

・ファイル名の付け方とフォルダ分け

サウンドのテーマは3種類ですが、いずれについても、左上に傾き過ぎた時は左チャンネルからの高い音を再生し、右下に傾き過ぎた時は右チャンネルから低い音を再生する、というように、どのような時にどのタイプのサウンドを再生するかという点は共通です。そこで、サウンドファイルには共通のファイル名を付け、テーマ別にフォルダを分けて区別することにします。再生するサウンドのファイル名を指定するコードを共用できるからです(図6)。

 図6:サウンドのフォルダの構成とファイル名(クリックで拡大)

・サウンドのデフォルトのボリューム

アプリを実行した途端に、突然大きな音が出力されてユーザーが耳を痛めてはいけないので、ボリュームを制御するスライダーのデフォルトは「3」にしています。ただし、どの程度にしておくのがよいかは、利用時の環境や、実機およびヘッドホンのボリューム設定などによって異なります。PC上のエミュレーターで確認する場合と、実機で確認する場合でも異なります。こういった個人では判断しかねる問題については、開発に時間的余裕があるなら、事前に友人知人にテスターを依頼した方がよいでしょう。

英語化

・画面上のテキスト

今回のアプリは複数言語対応のローカライズではなく、英語版のみで、作り分けはしません。そのため、どの国の人が見ても分かるように、また、英語の苦手な人が見ても使えるように、画面上のテキストは「START」と「OK」のみとします。

複数言語対応のローカライズについては、3月7日の「UX-TV」で「多言語化」についての解説があります。
→参照:UX-TV: 3/7放送分

・ヘルプとアプリの説明のテキスト

英語版アプリでは、ヘルプと申請時のアプリの説明のテキストは、どちらも英語で書く必要があります。ヘルプは数行で済ませたとしても、アプリの説明はある程度の行数を書きたいものです。これは、開発者自身がネイティブでない限り、できる範囲で作成するしかありません。
ただ、機能を表す言葉さえ散りばめていれば意図は伝わりますから、神経質になる必要はありません。今回のアプリのテキストは、筆者が中学高校で習っただけの英語で書いていますが、リジェクトなく認定されています。
1から書くのが億劫な場合は、日本語で書いて機械翻訳を使っても問題ないようです。実際、機械翻訳を使って認定されているケースをいくつも見聞きしています。アプリのアイデアがあるにもかかわらず、正確な英語でなければならないという考えに縛られて一歩を踏み出せないのだとしたら、それはもったいないことではないでしょうか。

・申請時の「テストのメモまたは指示」

APP Hubで申請する際の「テストのメモまたは指示」(第2回の図45参照)は英語で書く必要はないため、日本語で書いたものでかまいません。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30