这没办法的。
强行关闭,一般你是程序逻辑有错误,你需要调试,修正这个bug。
无响应,一是你的平台太慢,跑的程序又太耗时,二可能是你设计的不合理,造成主线程阻塞时间太长。这些都是程序的bug,屏蔽做不到,做了也白做,因为你没有解决根本问题,而只想将现象掩盖。针对你的问题,是你http上传,这个耗时等待的过程,肯定单独用在主线程中处理了,造成主线程阻塞,你上传这段时间中,主线程只能处理你的上传,无法响应系统事件。对你这种情况,一定要单独再创建一个线程,上传过程在另外一个线程中处理。

解决方案 »

  1.   

    5秒没有响应,android就会报ANR(Android Not Response),耗时操作要单独开一个线程来执行,不能放在主线程里执行,这样会阻塞主线程,就报你的错误了。
      

  2.   

    我用
    new Thread(){
    public void run(){
    /*
    代码
    */
    }
    }.start();
    起个新线程
    还是会出现"无响应"的提示啊???
      

  3.   

    不要线程同步, 起始控制等都要异步的。
    通过message和状态机控制即可。总之,不能让主线程等待就行了。 保证一个函数执行在微秒级的
      

  4.   

    需要新启动一个线程来控制上传图片的耗时操作 anr那个一般5秒阻塞就会弹 通过message来控制
      

  5.   

    这个不能屏蔽,你想办法别阻塞主线程,出现ANR是你的代码的涉及缺陷