#wp7dev_jp

Marketplace を日本限定にすることで、アプリケーションの機能として日本だけで使える機能を入れられる、とか IS12Tだけで動作ればよいのでは?なぜ審査に落ちるのか?というご質問を受けることがあります。

image

まず、Marketplace では配布対象の国を決めていますが、これはそのまま その国だけで使われる、ということを開発者に保証しているわけではありません。

ユーザーはLive IDの国設定によってMarketplaceの国が決まります。日本の設定になっているLive IDであれば、日本のMarketplace を開きます。しかしそのユーザーは必ずしも日本にいてIS12Tを使っているというわけではありません。もしかしたら日本の Live ID のユーザーが、アメリカにいて、AT&TのLumia 900を使っているかもしれませんし、中国にいて256MB対応のデバイスを使っているかもしれません。私がシアトルに出張した時などはまさにそんな状況ですね。

 

では、Marketplace の国設定でなにが利用者に保障されるかというと、その国の文化の遵守(例えば 日本文化圏における公序良俗の遵守)です。利用者は日本のMarketplace からアプリをダウンロードする限り、おかしなアプリケーションをダウンロードしてしまう心配はありません。

ちなみにアプリケーションには標準の言語設定がありますが、こちらは表記言語を規定しそれをユーザーに保障します。日本語設定のアプリは日本語での表記をMarketplaceを通じてユーザーに保障しています。これは1つのアプリで複数の言語に対応できますが、その場合は各言語のUIに自動的に切り替わらなければなりません。

逆に開発する側は、こういった配布対象国の文化の順守と、アプリケーションの対象言語での表記を守る必要があります。

では特定の地域だけの機能はどうしたらいいのか?

考え方はいろいろあると思いますが、利用者に使用している場所を聞いたり、サービスを利用できる地域にいるかどうかを確認して、対象地域にいる場合には機能をONにする。といった具合で機能を実装するのがいいかもしれません。

512MB のエミュレーターや IS12Tで動かせばちゃんと動くが、256MBのエミュレーターではちゃんと動かない場合、メモリの使用量の調整が必要ですが、難しい場合はManifestに、<Requirement Name="ID_REQ_MEMORY_90" /> を記載して256MB以下の環境をサポートしないようにしてしまうのもありです。参考