目前手机系统中对App的内存使用都是有限制的,尤其是对于Android和WindowsPhone这样的平台,因为机型很多,配置高低不同因此对于同一个App在不同的手机上运行的效果也不同。
WP上通常对于一个App允许使用的最大内存限制是150MB,但是我们开发的应用有时会在使用峰值上超过这个数字,因此微软也在给我们留下了能够扩展使用内存的办法。目前比较主流的做法有两种:
第一,通过Manifest请求更多内存。这个方法比较通用,就是按照下面的代码在Manifest文件的App节点中加入一个FunctionalCapability。目前Manifest的可视化界面中是没有这个选项的,因此只能在代码模式下编写。
1 <App> 2 <FunctionalCapabilities> 3 <FunctionalCapability Name="ID_FUNCCAP_EXTEND_MEM"/> 4 </FunctionalCapabilities> 5 </App>
第二,对App的使用机型做出限制。这个办法不是很好,因为它会限制你的App能够使用的机型。通过下面的代码可以设置:
1 <App> 2 <Requirements> 3 <Requirements Name="ID_REQ_MEMORY_300"/> 4 </Requirements> 5 </App>
设置的结果就是部分低内存机型无法在应用商店中看到你的App,同样的即使拿到你的XAP文件也无法安装你的应用。