低価格帯デバイスへの対応: Windows Phone アプリを申請する前に、256MBエミュレーターでテストし、予期せぬ不合格に備えよう
低価格帯のWindows Phoneデバイスとともに世界市場が広がっていますが、その一方で、256MBメモリデバイスでアプリが稼働することが求められています。
今後、アプリを申請される場合は、Windows Phone SDK 7.1.1を利用していただき、256MBエミュレーターでの動作確認をお勧めします。
要点をまとめておきます。
Developing for 256-MB Devices
https://bit.ly/wp256MB
Windows Phone SDK 7.1.1については、UX-TV 2012/4/4 のアーカイブ https://www.ustream.tv/recorded/21584653 をご覧ください。
256MBデバイスかどうかの判定方法
正確にはApplicationWorkingSetLimitが90MBより小さいデバイスかどうかを判定します。
try {
Int64 result = (Int64)
DeviceExtendedProperties.GetValue("ApplicationWorkingSetLimit");
if (result < 94371840L) // 90MB より小さい場合は、256MB デバイス
isLowMemDevice = true;
else
isLowMemDevice = false;
}
catch (ArgumentOutOfRangeException)
{
// Windows Phone OS update not installed
isLowMemDevice = false;
}
256MBデバイスへのインストールを抑制する方法
十分なメモリが必要なアプリの場合、ApplicationWorkingSetLimitが90MBより小さいデバイスに対するアプリケーションのインストールを抑制する方法があります。
WMAppManifest.xml に次の内容を追加します。
</Capabilities>
<Requirements>
<Requirement Name="ID_REQ_MEMORY_90" />
</Requirements>