闲置内存和运行内存占用尽量减少,参考同类竞争对手水平
线上基本没有源码,借助 Android SDK 中的 DDMS 工具,DDMS 工具中 Traceview 的使用
点击"Tools"下拉选择"Android"-"Android Device Monitor",选择右上方 DDMS
如果找不到手机,在 dos 下输入
adb devices
出现List of devices attached(不显示设备)
先确保连线问题,手机驱动还是 usb 调式模式,如果还是不行,重连手机,重启 adb 进程如下:
adb kill-server adb start-server
怕搞乱最好只链接 1 台手机。
连接顺利后,先打开 android 的运行窗口,在上方可以查看内存和空闲内存
继续操作你的游戏,关注 data object 注意 count 如果过大,记录下来,回头在 pc 版检查内存泄露
先来讲讲切换的生命周期,了解 Android API 说明 Activity 继承了 ApplicationContext 这个类,范例如下:
public class Activity extends ApplicationContext {
protected void onCreate(Bundle savedInstanceState); //savedInstanceState保存当时状态
protected void onStart();
protected void onRestart();
protected void onResume(); //刷新
protected void onPause();
protected void onStop();
protected void onDestroy(); //关闭程序
}
public class ActivityTest extends Activity {
private static final String TAG = "appA";
private static final String TAG = "appB";
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); //调用父类
setContentView(R.layout.main);
Log.e(TAG, " onCreate");
}
protected void onStart() {
super.onStart();
Log.e(TAG, "start onStart");
}
......
切换 app
A.onResume() -> A.onPause() -> B.onStart() -> B.onResume()
可以在切换时打对应的 log
如果有源码,可以用另外的办法,可以联系陈大喵 jiazurongyu