当“服务”多次调用“活动”时,RAM使用率会增加



我有一个问题。我有一个服务,它调用一个活动来执行一个操作。该活动被称为随机或预定义的时间段。

但是,每次调用活动时,RAM的使用量都会增加2-3MB。

这就是我如何从服务中调用活动,

         Intent callIntent = new Intent(Intent.ACTION_CALL);
         callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
         callIntent.setClass(getBaseContext(),CustomDialog.class);
         startActivity(callIntent);

很可能是因为您每次都在创建活动的新实例。使用FLAG_ACTIVITY_REORDER_TO_FRONT而不是FLAG_ACTIVITY_NEW_TASK,或者确保您的旧活动实例在某个时刻被销毁(例如,用户按BACK或您调用finish())。

欢迎您从DDMS获得堆转储,在MAT中对其进行检查,并具体确定问题所在。

最新更新