大量内存分配只有framelayout

时间:2017-04-25 08:40:45

标签: java android performance memory-management

当我打开此活动时,分配的内存从11MB变为近50MB ..

在此活动中,我只有一个带有图像的framelayout ..而且我使用onTouchEvent移动点图像..

有人可以告诉我为什么我会使用这么多内存吗?即使我按下后退按钮离开活动,分配的内存仍然是50MB

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/fl"
    tools:context="it.uniroma3.sensorlog">

<ImageView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:src="@mipmap/mappa"
    android:id="@+id/map"/>

<ImageView
    android:layout_width="10dp"
    android:layout_height="10dp"
    android:src="@android:drawable/ic_notification_overlay"
    android:id="@+id/dot"
    />

</FrameLayout>

2 个答案:

答案 0 :(得分:2)

重点是:我们无法知道。

事情是:你的应用程序会以某种方式消耗此内存。只有才能运行和配置文件。

因此,这里的基本答案是:学习如何使用相应的工具;并自己去想。

良好的起点是here,或者该主题的其他现有question

鉴于你的评论;和另一个答案:第一个,直接的实验可能是:去寻找一小组小图像;并看看这是否有所作为。如果是的话;你知道要搜索的

答案 1 :(得分:0)

我遇到了同样的问题,问题很可能在于您的图像分辨率,请尝试减少它。