我有一个android应用程序,这个应用程序连接到服务器下载图像,但这个图像有多个副本,第一个副本1600 * 1080像素,第二个是800 * 540 ... 所以设备应该发送标签到服务器下载这个设备的良好图像 我用了很多方法来检查设备的内存或密度,但结果还不够清楚做出决定,这里我使用了一些代码:android在运行时检查堆内存
float density = getResources().getDisplayMetrics().density;
long mem = Runtime.getRuntime().freeMemory();
long heap = Debug.getNativeHeapAllocatedSize();
结果是3个装置是这样的:
SAMSUMG标签10英寸= 1.0 , 745464 , 3249552 byte
中国标签7英寸= 1.0 , 559944 , 2789016 byte
HTC MOBLE 3.4英寸= 1.5 , 1760904 , 8942736 byte
的结果显示,HTC是更好的,但它不是,因为我无法查看它的最高分辨率,但对其他设备是非常好的 错误消息: java.lang.OutOfMemoryError:位图大小超过VM预算(堆大小= 7687KB,分配= 3356KB,位图大小= 25092KB)
在这个问题上的任何帮助?