ANR异常_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > ANR异常

ANR异常

 2017/7/30 20:38:43  饭饭_fan  程序员俱乐部  我要评论(0)
  • 摘要:ANR异常一、简介解决方法:别在主线程中写非常耗时的操作二、代码实例点击之后,不停点击,乱点出现anr异常代码/anr/src/anr/MainActivity.java1packageanr;234567importcom.example.anr.R;89importandroid.app.Activity;10importandroid.content.Intent;11importandroid.os.Bundle;12importandroid.view.View
  • 标签:异常

ANR异常

一、简介

解决方法:别在主线程中写非常耗时的操作

 

二、代码实例

 

点击之后,不停点击,乱点

出现anr异常

代码

/anr/src/anr/MainActivity.java

 1 package anr;
 2 
 3 
 4 
 5 
 6 
 7 import com.example.anr.R;
 8 
 9 import android.app.Activity;
10 import android.content.Intent;
11 import android.os.Bundle;
12 import android.view.View;
13 import android.view.View.OnClickListener;
14 import android.widget.Button;
15 
16 
17 
18 public class MainActivity extends Activity{
19     private Button btn_openActivty;//创建一个button对象
20      protected void onCreate(Bundle savedInstanceState) {
21             super.onCreate(savedInstanceState);//父类操作
22             setContentView(R.layout.activity_main);//引入名为activity_main的界面
23             btn_openActivty=(Button) findViewById(R.id.btn_openActivity);//找id为btn_openActivity的button
24             /*
25              * 在主线程(UI线程)执行耗时的操作;
26              * 界面无法响应输入事件了,
27              * 就会发生ANR异常(大于6秒的行为)
28              */
29             btn_openActivty.setOnClickListener(new OnClickListener() {//设置button点击监听
30                 
31                 @Override
32                 public void onClick(View v) {//onclick事件
33                     // TODO Auto-generated method stub
34                     try {
35                         Thread.sleep(6000);
36                     } catch (Exception e) {
37                         // TODO: handle exception
38                         e.printStackTrace();
39                     }
40                     Intent intent=new Intent();//初始化intent
41                     intent.setClass(MainActivity.this,Activity01.class);//连接
42                     startActivity(intent);//打开activity
43                 }
44             });
45         }
46 }

 解决方法:别在主线程中写非常耗时的操作

上一篇: C#实现异步编程 下一篇: 没有下一篇了!
发表评论
用户名: 匿名