Windows phone 7 检测低内存设备

Windows phone 7 检测低内存设备,windows-phone-7,live-tile,Windows Phone 7,Live Tile,我正在尝试删除在我的应用程序中为运行低内存设备(如诺基亚Lumia 610)的用户启用live tile的选项。我正在使用下面的代码,这是我从微软得到的,但是一些运行Lumia 800和Focus i917的用户报告说,在我添加了这个之后,live tile功能消失了 检测内存不足设备的正确方法是什么 这是我正在使用的代码,显然可以在emulator中工作,并且适用于大多数用户,但不适用于所有用户: long结果=0; 尝试 { 结果=(长)DeviceExtendedProperties.Ge

我正在尝试删除在我的应用程序中为运行低内存设备(如诺基亚Lumia 610)的用户启用live tile的选项。我正在使用下面的代码,这是我从微软得到的,但是一些运行Lumia 800和Focus i917的用户报告说,在我添加了这个之后,live tile功能消失了

检测内存不足设备的正确方法是什么

这是我正在使用的代码,显然可以在emulator中工作,并且适用于大多数用户,但不适用于所有用户:

long结果=0;
尝试
{
结果=(长)DeviceExtendedProperties.GetValue(“ApplicationWorkingSetLimit”);
}
捕获(ArgumentOutOfRangeException)
{
//该设备尚未收到操作系统更新,这意味着该设备是512-MB设备。
}
如果(结果<90000000)
{
//低存储设备
}

我使用这个代码。问题可能出在常量中,我的问题来自MSDN页面关于低内存设备的内容:

//
///标记设备是否为低内存Tango设备。
/// 
公共静态bool islowmem设备
{
得到
{
如果(!isLowMemDevice.HasValue)
{
尝试
{
//检查工作设置限制
long result=(long)DeviceExtendedProperties.GetValue(“ApplicationWorkingSetLimit”);
isLowMemDevice=结果<94371840L;
}
捕获(ArgumentOutOfRangeException)
{
//操作系统不支持此调用=>表示512 MB设备
isLowMemDevice=false;
}
}
返回isLowMemDevice.Value;
}
}
私人静电波?islowmem装置;

我使用这个代码。问题可能出在常量中,我的问题来自MSDN页面关于低内存设备的内容:

//
///标记设备是否为低内存Tango设备。
/// 
公共静态bool islowmem设备
{
得到
{
如果(!isLowMemDevice.HasValue)
{
尝试
{
//检查工作设置限制
long result=(long)DeviceExtendedProperties.GetValue(“ApplicationWorkingSetLimit”);
isLowMemDevice=结果<94371840L;
}
捕获(ArgumentOutOfRangeException)
{
//操作系统不支持此调用=>表示512 MB设备
isLowMemDevice=false;
}
}
返回isLowMemDevice.Value;
}
}
私人静电波?islowmem装置;

谢谢您的帮助。调试时,我从未在isLowMemDevice中获得值,代码也从未执行过。我应该在我的页面中将“private static bool?isLowMemDevice;”放在哪里?我将它放在AppHelper类中,然后您可以在任何地方使用AppHelper.isLowMemDevice属性。感谢您的帮助。调试时,我从未在isLowMemDevice中获得值,代码也从未执行过。我应该在我的页面中将“private static bool?isLowMemDevice;”放在哪里?我将它放在AppHelper类中,然后您可以在任何需要的地方使用AppHelper.isLowMemDevice属性。