本帖最后由 sasuke38 于 2013-04-17 15:00:07 编辑

解决方案 »

  1.   

    OutOfMemoryError....
    你的内存泄露了吧。
    试试能不能重启吧。
    不知道内存溢出了还能不能执行。。    PendingIntent restartIntent;
        Intent intent = new Intent();
        intent.setClassName(
                mContext.getPackageName(),
                "com.toshiba.cpad.tosnote.activity.MainActivity");
        restartIntent = PendingIntent.getActivity(
                mContext.getApplicationContext(),
                0, intent,
                Intent.FLAG_ACTIVITY_NEW_TASK);
        AlarmManager mgr = (AlarmManager) mContext
                .getSystemService(Context.ALARM_SERVICE);
        mgr.set(AlarmManager.RTC,
                System.currentTimeMillis() + 1000,
                restartIntent);
        android.os.Process
                .killProcess(android.os.Process
                        .myPid());
      

  2.   

    安个MAT插件,看看哪里内存泄露了。
      

  3.   


    OutOfMemoryError是内存泄露么   我是在解码很多图片的时候造成的   至于在哪里   不是在catch那里么   还能打印出error的信息呢    如果知道了哪一行带么发生error   如果是我的程序继续运行
      

  4.   

    哈哈,遇到一样的问题了。我们项目最近也在做图片类的应用
    基本上遇到这种图片类的问题,bitmap说不好就在哪里泄露了。慢慢优化吧。
    项目上线肯定是对内存泄露零容忍的。
      

  5.   

    还是找到OutOfMemoryError的原因,解决掉这个问题比较好吧
      

  6.   


    解决掉的办法就是我每次解码一张图片的时候判断即将解码出来的图片会占用多少内存和当前可用内存做比较  并且优化一下代码避免重复解码图片或者及时释放图片什么的
    做了这些之后请问我该如何从error中恢复    看来只能重启程序了是不是
      

  7.   

    APP 内存泄漏了,恢复并不最好的办法.首先应该是解决Memory Out的Root casue.而不是去规避这个问题.
    另外:
    Android APP在处理图片时,最终都会以bitmap实现,也就是展成最终的PIX(W*H*32)来计算内存,所以常会出现内存泄漏.就我所知,有两种解决方案:
    A. 在加载图片资源,并进处理时,及时释放临时图片数据变量.一但不使用此变量,最好尽早释放.释放方式为赋值为NULL;
    B. 启动一个APP来实现对图片资源的管理与处理.这样就能增加内存的使用,但是根本的,还是要处理好内存的管理.