android 全局异常处理 在onCreate方法中抛出异常后会出现死循环,请问怎么解决呢?
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    System.out.println(2/0);
}

这是全局异常处理中的 Application
package com.scott.crash;

import android.app.Application;

public class CrashApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
CrashHandler crashHandler = CrashHandler.getInstance();
crashHandler.init(getApplicationContext());
}

}

2个回答

System.out.println(2/0);

你把这句话去掉。

这句话是我来测试用的,我测试全局异常捕获用的,这个全局异常捕获是用来捕获当应用程序崩溃时候所触发的异常信息

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
递归出现死循环,怎么解决
数组:rnArray ( [0] => Array ( [id] => 1 [fid] => 12227 ) [1] => Array ( [id] => 4 [fid] => 1 ) [2] => Array ( [id] => 18 [fid] => 1 ) [3] => Array ( [id] => 21 [fid] => 18 ) [4] => Array ( [id] => 22 [fid] => 1 ) [5] => Array ( [id] => 23 [fid] => 135 ) [6] => Array ( [id] => 24 [fid] => 18 ) [7] => Array ( [id] => 29 [fid] => 22 ) [8] => Array ( [id] => 30 [fid] => 22 ) [9] => Array ( [id] => 31 [fid] => 22 ) [10] => Array ( [id] => 32 [fid] => 22 ) [11] => Array ( [id] => 33 [fid] => 32767 ) [12] => Array ( [id] => 34 [fid] => 22 ) [13] => Array ( [id] => 35 [fid] => 135 ) [14] => Array ( [id] => 36 [fid] => 22 ) [15] => Array ( [id] => 135 [fid] => 22 ) [16] => Array ( [id] => 138 [fid] => 32 ) [17] => Array ( [id] => 139 [fid] => 135 ) [18] => Array ( [id] => 140 [fid] => 32 ) [19] => Array ( [id] => 273 [fid] => 22 ) [20] => Array ( [id] => 274 [fid] => 135 ) [21] => Array ( [id] => 275 [fid] => 22 ) [22] => Array ( [id] => 276 [fid] => 32767 ) [23] => Array ( [id] => 277 [fid] => 273 ) [24] => Array ( [id] => 443 [fid] => 18 ) [25] => Array ( [id] => 621 [fid] => 18 ) [26] => Array ( [id] => 665 [fid] => 848 ) [27] => Array ( [id] => 760 [fid] => 22 ) [28] => Array ( [id] => 762 [fid] => 1 ) [29] => Array ( [id] => 846 [fid] => 29 ) [30] => Array ( [id] => 848 [fid] => 22 ) [31] => Array ( [id] => 1217 [fid] => 1 ) [32] => Array ( [id] => 3190 [fid] => 1 ) [33] => Array ( [id] => 3208 [fid] => 22 ) [34] => Array ( [id] => 3238 [fid] => 1 ) [35] => Array ( [id] => 3241 [fid] => 3238 ) [36] => Array ( [id] => 3242 [fid] => 3232 ) [37] => Array ( [id] => 3244 [fid] => 3238 ) [38] => Array ( [id] => 3245 [fid] => 30 ) [39] => Array ( [id] => 3258 [fid] => 36 ) [40] => Array ( [id] => 3259 [fid] => 18 ) [41] => Array ( [id] => 3276 [fid] => 1 ) [42] => Array ( [id] => 3625 [fid] => 22 ) [43] => Array ( [id] => 3683 [fid] => 18 ) [44] => Array ( [id] => 3723 [fid] => 1 ) [45] => Array ( [id] => 4550 [fid] => 12227 ) [46] => Array ( [id] => 4559 [fid] => 1 ) [47] => Array ( [id] => 4685 [fid] => 12174 ) [48] => Array ( [id] => 4781 [fid] => 22 ) [49] => Array ( [id] => 4782 [fid] => 135 ) [50] => Array ( [id] => 4811 [fid] => 135 ) [51] => Array ( [id] => 4852 [fid] => 762 ) [52] => Array ( [id] => 4973 [fid] => 22 ) [53] => Array ( [id] => 5204 [fid] => 22 ) [54] => Array ( [id] => 5528 [fid] => 21 ) [55] => Array ( [id] => 5613 [fid] => 762 ) [56] => Array ( [id] => 5729 [fid] => 135 ) [57] => Array ( [id] => 11095 [fid] => 3208 ) [58] => Array ( [id] => 11335 [fid] => 22 ) [59] => Array ( [id] => 12174 [fid] => 1 ) [60] => Array ( [id] => 12227 [fid] => 1 ) [61] => Array ( [id] => 12264 [fid] => 12174 ) [62] => Array ( [id] => 12265 [fid] => 12174 ) [63] => Array ( [id] => 12266 [fid] => 22 ) [64] => Array ( [id] => 12267 [fid] => 22 ) [65] => Array ( [id] => 12268 [fid] => 1 ) [66] => Array ( [id] => 12269 [fid] => 1 ) [67] => Array ( [id] => 12270 [fid] => 1 ) [68] => Array ( [id] => 12271 [fid] => 1 ) ) rn=================================================================rn递归函数:rnfunction child($id, $ar)rnrn global $pathint;rn foreach($ar as $k => $v)rn rn if ($v['fid'] == $id)rn rn $pathint .= ','.$v['id'];rn child($v['id'], $ar);rn rn rn return $pathint;rnrn=======================================rn数组是从数据库查询生成的,一调用递归就成了死循环,检查了很久都没有找到原因,
程序出现死循环,怎么解决
[root@192 CentOS]# rpm -ivh libX11-devel-1.0.3-9.el5.x86_64.rpmrnwarning: libX11-devel-1.0.3-9.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, ke y ID e8562897rnerror: Failed dependencies:rn libXdmcp-devel is needed by libX11-devel-1.0.3-9.el5.x86_64rn xorg-x11-proto-devel >= 7.1-2 is needed by libX11-devel-1.0.3-9.el5.x86_ 64rn[root@192 CentOS]# rpm -ivh libXdmcp-devel-1.0.1-2.1.x86_64.rpmrnwarning: libXdmcp-devel-1.0.1-2.1.x86_64.rpm: Header V3 DSA signature: NOKEY, ke y ID e8562897rnerror: Failed dependencies:rn xorg-x11-proto-devel is needed by libXdmcp-devel-1.0.1-2.1.x86_64rn[root@192 CentOS]# rpm -ivh libXpm-devel-3.5.5-3.x86_64.rpmrnwarning: libXpm-devel-3.5.5-3.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID e8562897rnerror: Failed dependencies:rn libX11-devel is needed by libXpm-devel-3.5.5-3.x86_64rn[root@192 CentOS]# rpm -ivh mesa-libGL-devel-6.5.1-7.7.el5.x86_64.rpmrnwarning: mesa-libGL-devel-6.5.1-7.7.el5.x86_64.rpm: Header V3 DSA signature: NOK EY, key ID e8562897rnerror: Failed dependencies:rn libX11-devel is needed by mesa-libGL-devel-6.5.1-7.7.el5.x86_64rn[root@192 CentOS]# rpm -ivh xorg-x11-proto-devel-7.1-9.el5.centos.x86_64.rpmrnwarning: xorg-x11-proto-devel-7.1-9.el5.centos.x86_64.rpm: Header V3 DSA signatu re: NOKEY, key ID e8562897rnerror: Failed dependencies:rn mesa-libGL-devel is needed by xorg-x11-proto-devel-7.1-9.el5.centos.x86_ 64rn[root@192 CentOS]#rnrn
Android 捕获全局异常处理
Android 捕获全局异常处理,崩溃前弹出提示框,错误信息保存至本地文件或发送邮件,或上传至后台服务器。
android 全局异常处理
android 全局异常处理 继承java.lang中的UncaughtExceptionHandler 的构造方法uncaughtException 来捕获异常
android全局异常处理
android开发过程中,捕获全局异常,然后关闭程序
Android:全局异常处理
Android:全局异常处理
Android 全局异常处理
CrashHandler package org.wp.activity; import java.io.File; import java.io.FileOutputStream; import java.io.FilenameFilter; import java.io.PrintWriter; import java.io.StringWriter; import java...
Android之全局异常处理
最近遇到一个问题,app遇到异常就崩溃了,断点也打不到,日志也被刷掉了,看不到异常消息处理不了异常,没有集成第三方工具。 想了做个全局异常类CrashHandler,处理全局异常: 此类不能与google的firebase 、crashlytics一块使用, 使用方法在MyApplication的onCreate中初始化一下,就ok public class MyApplication exten...
Scanner在异常处理中死循环
for (int i = 0; i < 2;i++) { System.out.println("请输入第" + (i + 1) + "位玩家的ID和姓名:"); System.out.println("请输入玩家的ID:"); int id = 0; try { id = console.nextInt(); } catch (Exception e) {
异常处理&&抛出异常
异常处理机制: try…..except…..finally…..try: # 需要捕获异常的代码块, 必须执行, 如果遇到异常, 调转到excepct语句; # 如果异常能被except后面的Error捕获, 执行except语句的内容, 然后执行finally; # 如果异常不能被except后面的Error捕获, 直接执行finally;; f = open('
Android onCreate方法
[img=https://img-bbs.csdn.net/upload/201606/21/1466480373_683826.png][/img][img=https://img-bbs.csdn.net/upload/201606/21/1466480385_943066.png][/img]
Android 解决屏幕旋转时重启onCreate方法
在对应的Activity注册的时候添加 android:configChanges="orientation|keyboardHidden|screenSize"就行了。
SpringMVC中的全局异常处理
简述 在开发中,如果没有对异常进行封装的话,那么我们的异常堆栈就会暴露到客户端中,这些信息可能会包括我们的sql语句,包结构信息等敏感信息,那么异常的的处理尤为重要了。那接下就是需要思考的就是,我们应该在哪里处理异常呢?在我们的业务层中,我们可以封装一些自定义的异常,方便我们记录日志信息和快速定位。对于发生了异常应该返回客户端那些信息呢?这时我们可以编写一个全局异常来封装返回给前端的modelA...
Spring中全局异常处理
1、首先我们编写一个全局异常处理的类ExceptionHandle,然后再类上加上注解@ControllerAdvice @ControllerAdvice可以选择要处理异常的包例如@ControllerAdvice(&quot;com.ldd.xxx.xxx&quot;) @ControllerAdvice还可以处理某些注解抛出的异常例如@ControllerAdvice(annotations=service...
解决Popupwindowon在onCreate方法中调用出现的错误
错误提示:android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running? 意思:当前activity的控件未渲染完毕,pop.showAtLocation(parent, Gravity.TOP,0, 0)这句不能执行
springmvc 全局异常处理的三种方法
第一种 通过SimpleMappingExceptionResolver类来定义,springmvc.xml内容自定义的异常可以继承Exception类 &amp;lt;bean class=&quot;org.springframework.web.servlet.handler.SimpleMappingExceptionResolver&quot;&amp;gt; &amp;lt;!-- 遇到异常时默认跳转的视图 error其...
局部异常处理和全局异常处理
<div>n 理解MVC设计模式n</div>n<div>n 了解SpringnMVC的架构以及请求流程n</div>n<p>n 掌握SpringnMVC开发环境搭建n</p>n<p>n 会使用springMVC获取前台数据和灵活的返回结果n</p>
怎么不是死循环呢?
class Qrnrn int n;rn synchronized int get()rn rn System.out.println("Got:" + n);rn return n;rn rn synchronized void put(int n)rn rn this.n=n;rn System.out.println("Put:" + n);rn rnrnrnclass Producer implements Runnablernrn Q q;rn Producer(Q q)rn rn this.q=q;rn new Thread(this,"Producer").start();rn rn public void run()rn rn int i=0;rn while(true)rn rn q.put(i++);rn rn rnrnrnclass Consumer implements Runnablernrn Q q;rn Consumer(Q q)rn rn this.q=q;rn new Thread(this,"Consumer").start();rn rn public void run()rn rn while(true)rn rn q.get();rn rn rnrnrnclass PCrnrn public static void main(String args[])rn rn Q q=new Q();rn new Producer(q);rn new Consumer(q);rn System.out.println("Press Control-C to stop.");rn rnrnrn执行的时候,为什么不是put()一直死循环呢?什么时候做了切换线程啊?请大虾讲解一下。
怎么会是死循环呢
//创建一个虚拟的新链表,原链表升序有序rnrn#include rn#include rn#define M 5rn#define N 7rnrnrn//定义一个含有两个域的结点rntypedef struct nodern int data;rn struct node *next;rnElemSN;rnrnElemSN * CombineLink(ElemSN *h1,ElemSN *h2)rnrn ElemSN *h=NULL,*s,*t;rn while(h1&&h2)rn rn if(h1->data data ) s=t=h1;h1=h1->next ;rn else s=t=h2;h2=h2->next ;//确定头rn s->next =NULL;rn t=t->next =s;//t为新链表的尾结点rn rn if(h1) t->next =h1;rn else t->next =h2;//判断那个比较长,把剩余部分接到尾结点rn return h;rnrnrn//创建正向链表(尾插)rnElemSN * CreatLink1(int a[],int n)rnrn ElemSN *h,*p,*t;rn for(int i=0;idata=a[i];rn p->next=NULL;rn if(!i) h=t=p;//是第一个结点rn else t=t->next=p;rn rn return h;rnrnrn//输出单向链表rnvoid PrintLink(ElemSN *h)rnrn ElemSN *p;rn printf("\n输出的链表为:\n");rn for(p=h;p;p=p->next)rn printf("%5d",p->data);rn printf("\n\n");rnrnrn//主函数调用rnint main(void)rnrn ElemSN *head1,*head2,*head;rn int a[M]=0,b[N]=0;rn int i;rn printf("\n请依次输入第一个链表每个结点的值:\n");rn for(i=0;i
全局异常处理
[b]在spring applicationContext.xml文件中添加如下配置:[/b] error error ...
Android值传递 将值传递到oncreate方法中
将handler中解析出的值传递到同一activity种的oncreate方法中npublic final Handler news_detailHandler = new Handler() 。。。。。。。。n url = port.getString("url");这个值传递到oncreate中nprotected void onCreate(Bundle savedInstanceState) n super.onCreate(savedInstanceState);n news_detailUtils.getnews_detailJSON(getIntent().getStringExtra("news_detail"), news_detailHandler);n setContentView(R.layout.acitivy_browse_news);n webView = (WebView) findViewById(R.id.webView);n String excerpt_URL = getIntent().getStringExtra("newsurl");//用intent不行 输出为空 n n求大神指点
Android textView 中 onCreate 方法的改变
我在main.xml上使用 Layout Editor创建了一个textview名称是textView1。rn我想使用一个自定义的字体,所以我在onCreate方法中创建了下面的代码,但是好像不能识别textView1。rnrn package com.mystraldesign.memorable;rn rn import android.app.Activity;rn import android.graphics.Typeface;rn import android.os.Bundle;rn rn public class MemorableActivity extends Activity rn rn /** Called when the activity is first created. */rn @Overridern public void onCreate(Bundle savedInstanceState) rn rn super.onCreate(savedInstanceState);rn setContentView(R.layout.main);rn Typeface type = Typeface.createFromAsset(getAssets(),"fonts/optima.ttf"); rn textView1.setTypeface(type);rn rn rnrn什么原因呢?rn
Android在onCreate方法中获取view的宽高
可能很多人认为获取view的宽高是很容易的事情,直接调用getWidth()和getHeight()方法不就行了嘛,但在onCreate方法中得到的永远是0,原因很简单,这两个方法是在view执行onMeasure方法之后才被真正赋值的。所以在view绘制完后调用这个方法才有效。 Android提供了View的观察者模式来解决这个问题,通过view的getViewTreeObserver()方法可以
Python_day11--异常处理(捕获异常、抛出异常)
一、抛出一个错误码在程序运行的过程中,如果发生了错误,可以事先约定返回一个错误代码,这样,就可以知道是否有错,以及出错的原因。在操作系统提供的调用中,返回错误码非常常见。比如打开文件的函数     open()     ,成功时返回文件描述符(就是一个整数),出错时返回  -1。 用错误码来表示是否出错十分不便,因为函数本身应该返回的正常结果和错误码混在一起,造成调用者必须用大量的代码来判断是否出...
为什么会出现死循环呢?
dorn rn ...rn while(inquiry!='N'||inquiry!='n'); //输入N(n)的话结束程序rn ...rnrn 我如果输入sa的话,也就是两个或多个字母,就变成死循环了?WHY?谢谢
java 异常处理之声明抛出异常
java 异常处理声明抛出异常2.声明抛出异常是Java中处理异常的第二种方式 2.声明抛出异常是Java中处理异常的第二种方式 如果一个方法(中的语句执行时)可能生成某种异常,但是并不能确定如何处理这种异常,则此方法应显示地声明抛出异常,表明该方法将不对这些异常进行处理,而由该方法的调用者负责处理。 在方法声明中用throws语句可以声明抛出异常的列表,throws后面的异常类型可以是方法中产...
为什么异常处理产生死循环
[code=Java]import java.util.*;rnrnpublic class RandomNum rnrn public static void main(String[] args) rn Random random = new Random();rn Scanner sc = new Scanner(System.in);rn int guess = 0;rn int guessNum = 0;rn String again = null;rn do rn guess = random.nextInt(100);rn do rn try rn System.out.println("请输入您猜到的数字:");rn guessNum = sc.nextInt();rn if (guessNum == guess) rn System.out.println("恭喜!猜对了!");rn break;rn else if (guessNum > guess) rn System.out.println("大了!");rn else rn System.out.println("小了!");rn rn catch (InputMismatchException e) rn System.out.println("请输入正确格式的数字!");rn rn while (true);rn System.out.println("again?(y/n)");rn again = sc.next();rn if (again.equals("n")) rn System.out.println("End of program.");rn break;rn rn while (true);rnrn rnrn[/code]rnrn上面这段代码,在我输入错误的数字格式时捕获异常,比如我输入“21f”,它捕获异常,然后打印"请输入正确格式的数字!",打印完了过后继续执行循环,打印那句:"请输入您猜到的数字:",接下来应该等待我输入啊,可是JVM好像直接把我上一次输入的“21f”作为结果,又开始处理异常,然后这样一直循环。。。rn为什么会出现这种情况?能不能麻烦大家给我解释稍微细一点,我是新手。谢谢!
死循环的话,能抛出异常么?
我想让程序死循环的时候,抛异常,请问有办法么?
Android中的Sqlite中的onCreate方法和onUpgrade方法的执行时机
Android中的Sqlite中的onCreate方法和onUpgrade方法的执行时机
请问这里怎么死循环了?
for(int i=(int)a.body.get(0).get(0)-400;i<(int)a.body.get(0).get(0)+400;i++)//body是vector,map是一个int[1000][1000]rn rn if(i<0)i=0;;if(i>999)i=999;;rn for(int o=(int)a.body.get(0).get(1)-300;o<(int)a.body.get(0).get(1)+300;o++)rn rn rn if(o<0)o=0;;if(o>999)o=999;;System.out.println("OK");rn switch(map[i][o])rn rn case 2:flashbody((int)a.body.get(0).get(0)-i,(int)a.body.get(0).get(1)-o);break;rn case 1:flashfood((int)a.body.get(0).get(0)-i,(int)a.body.get(0).get(1)-o);break;rn ;rn rn ;
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview