-
android 异常
2013-05-01 23:05:33异常1: [java] view plaincopy org.json.JSONException: Unterminated array at character 1858 of json字符串。 我遇到这个Exceptionhttp://blog.csdn.net/dinglin_87/article/details/7852212
异常1:
- org.json.JSONException: Unterminated array at character 1858 of json字符串。
异常2:- java.net.SocketException: No route to host
异常3:
- ActivityManager: java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.zyq.main/.CropImage } from null (pid=6849, uid=2000) requires null
安装应用的时候报出上述异常。原因是因为入口Activity在AndroidManifest.xml中重复注册,注册了两遍。或
warn1:
- Permission denied: checkComponentPermission() reqUid=10111
- Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.zyq.main/.CropImage } from null (pid=3387, uid=2000) requires null
我遇到这个warn的时候是因为入口Activity在AndroidManifest.xml中重复注册,注册了两遍。异常4
- android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
-
android 异常打印
2017-02-18 23:17:18android 异常打印package com.lbstock; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintWriter; import java.io.StringWriter; import java.io.Writer; import java.lang.Thread.UncaughtExceptionHandler; import java.lang.reflect.Field; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import android.content.Context; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.os.Build; import android.os.Environment; import android.os.Looper; import android.util.Log; import android.widget.Toast; /** * UncaughtException处理类,当程序发生Uncaught异常的时候,由该类来接管程序,并记录发送错误报告. * @author way */ public class CrashHandler implements UncaughtExceptionHandler { private static final String TAG = "CrashHandler"; private Thread.UncaughtExceptionHandler mDefaultHandler;// 系统默认的UncaughtException处理类 private static CrashHandler INSTANCE = new CrashHandler();// CrashHandler实例 private Context mContext;// 程序的Context对象 private Map<String, String> info = new HashMap<String, String>();// 用来存储设备信息和异常信息 private SimpleDateFormat format = new SimpleDateFormat( "yyyy-MM-dd-HH-mm-ss");// 用于格式化日期,作为日志文件名的一部分 /** 保证只有一个CrashHandler实例 */ private CrashHandler() { } /** 获取CrashHandler实例 ,单例模式 */ public static CrashHandler getInstance() { return INSTANCE; } public void init(Context context) { mContext = context; mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler();// 获取系统默认的UncaughtException处理器 Thread.setDefaultUncaughtExceptionHandler(this);// 设置该CrashHandler为程序的默认处理器 } /** * 当UncaughtException发生时会转入该重写的方法来处理 */ public void uncaughtException(Thread thread, Throwable ex) { if (!handleException(ex) && mDefaultHandler != null) { // 如果自定义的没有处理则让系统默认的异常处理器来处理 mDefaultHandler.uncaughtException(thread, ex); } else { try { Thread.sleep(3000);// 如果处理了,让程序继续运行3秒再退出,保证文件保存并上传到服务器 } catch (InterruptedException e) { e.printStackTrace(); } // 退出程序 android.os.Process.killProcess(android.os.Process.myPid()); System.exit(1); } } /** * 自定义错误处理,收集错误信息 发送错误报告等操作均在此完成. * @param ex 异常信息 * @return true 如果处理了该异常信息;否则返回false. */ public boolean handleException(Throwable ex) { if (ex == null) return false; new Thread() { public void run() { Looper.prepare(); Log.e("lbsotck",String.valueOf(ex.getMessage())); Toast.makeText(mContext, "很抱歉,程序出现异常,即将退出", Toast.LENGTH_LONG).show(); Looper.loop(); } }.start(); // 收集设备参数信息 collectDeviceInfo(mContext); // 保存日志文件 saveCrashInfo2File(ex); return true; } /** * 收集设备参数信息 * @param context */ public void collectDeviceInfo(Context context) { try { PackageManager pm = context.getPackageManager();// 获得包管理器 PackageInfo pi = pm.getPackageInfo(context.getPackageName(), PackageManager.GET_ACTIVITIES);// 得到该应用的信息,即主Activity if (pi != null) { String versionName = pi.versionName == null ? "null" : pi.versionName; String versionCode = pi.versionCode + ""; info.put("versionName", versionName); info.put("versionCode", versionCode); } } catch (NameNotFoundException e) { e.printStackTrace(); } Field[] fields = Build.class.getDeclaredFields();// 反射机制 for (Field field : fields) { try { field.setAccessible(true); info.put(field.getName(), field.get("").toString()); Log.d(TAG, field.getName() + ":" + field.get("")); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } } } private String saveCrashInfo2File(Throwable ex) { StringBuffer sb = new StringBuffer(); for (Map.Entry<String, String> entry : info.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); sb.append(key + "=" + value + "\r\n"); } Writer writer = new StringWriter(); PrintWriter pw = new PrintWriter(writer); ex.printStackTrace(pw); Throwable cause = ex.getCause(); // 循环着把所有的异常信息写入writer中 while (cause != null) { cause.printStackTrace(pw); cause = cause.getCause(); } pw.close();// 记得关闭 String result = writer.toString(); sb.append(result); // 保存文件 long timetamp = System.currentTimeMillis(); String time = format.format(new Date()); // String fileName = "crash-" + time + "-" + timetamp + ".log"; String fileName = "crash-" + time + ".log"; if (Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)) { try { File dir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "1lbg"); Log.i("CrashHandler", dir.toString()); if (!dir.exists()) dir.mkdir(); FileOutputStream fos = new FileOutputStream(new File(dir, fileName)); fos.write(sb.toString().getBytes()); fos.close(); return fileName; } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } return null; } }
-
Android异常大全
2017-12-25 16:38:34Android异常大全 java.lang.NullPointerException 这个异常的解释是 "程序遇上了空指针 ",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片...Android异常大全
java.lang.NullPointerException
这个异常的解释是 "程序遇上了空指针 ",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。对数组操作中出现空指针,即把数组的初始化和数组元素的初始化混淆起来了。数组的初始化是对数组分配需要的空间,而初始化后的数组,其中的元素并没有实例化,依然是空的,所以还需要对每个元素都进行初始化(如果要调用的话)。
java.lang.ClassNotFoundException
异常的解释是"指定的类不存在",这里主要考虑一下类的名称和路径是否正确即可
java.lang.ArithmeticException
这个异常的解释是"数学运算异常",比如程序中出现了除以零这样的运算就会出这样的异常,对这种异常,大家就要好好检查一下自己程序中涉及到数学运算的地方,公式是不是有不妥了。
java.lang.ArrayIndexOutOfBoundsException
这个异常的解释是"数组下标越界",现在程序中大多都有对数组的操作,因此在调用数组的时候一定要认真检查,看自己调用的下标是不是超出了数组的范围,一般来说,显示(即直接用常数当下标)调用不太容易出这样的错,但隐式(即用变量表示下标)调用就经常出错了,还有一种情况,是程序中定义的数组的长度是通过某些特定方法决定的,不是事先声明的,这个时候,最好先查看一下数组的length,以免出现这个异常。
java.lang.IllegalArgumentException
这个异常的解释是"方法的参数错误",很多j2me的类库中的方法在一些情况下都会引发这样的错误,比如音量调节方法中的音量参数如果写成负数就会出现这个异常,再比如g.setcolor(int red,int green,int blue)这个方法中的三个值,如果有超过255的也会出现这个异常,因此一旦发现这个异常,我们要做的,就是赶紧去检查一下方法调用中的参数传递是不是出现了错误。
java.lang.IllegalAccessException
这个异常的解释是"没有访问权限",当应用程序要调用一个类,但当前的方法即没有对该类的访问权限便会出现这个异常。对程序中用了package的情况下要注意这个异常。
其他还有很多异常,我就不一一列举了,我要说明的是,一个合格的程序员,需要对程序中常见的问题有相当的了解和相应的解决办法,否则仅仅停留在写程序而不会改程序的话,会极大影响到自己的开发的。关于异常的全部说明,在api里都可以查阅。
算术异常类:ArithmeticExecption
空指针异常类:NullPointerException
类型强制转换异常:ClassCastException
数组负下标异常:NegativeArrayException
数组下标越界异常:ArrayIndexOutOfBoundsException
违背安全原则异常:SecturityException
文件已结束异常:EOFException
文件未找到异常:FileNotFoundException
字符串转换为数字异常:NumberFormatException
操作数据库异常:SQLException
输入输出异常:IOException
方法未找到异常:NoSuchMethodException
java.lang.AbstractMethodError 抽象方法错误。当应用试图调用抽象方法时抛出。
java.lang.AssertionError 断言错。用来指示一个断言失败的情况。
java.lang.ClassCircularityError 类循环依赖错误。在初始化一个类时,若检测到类之间循环依赖则抛出该异常。
java.lang.ClassFormatError 类格式错误。当Java虚拟机试图从一个文件中读取Java类,而检测到该文件的内容不符合类的有效格式时抛出。
java.lang.Error 错误。是所有错误的基类,用于标识严重的程序运行问题。这些问题通常描述一些不应被应用程序捕获的反常情况。
java.lang.ExceptionInInitializerError 初始化程序错误。当执行一个类的静态初始化程序的过程中,发生了异常时抛出。静态初始化程序是指直接包含于类中的static语句段。
java.lang.IllegalAccessError 违法访问错误。当一个应用试图访问、修改某个类的域(Field)或者调用其方法,但是又违反域或方法的可见性声明,则抛出该异常。
java.lang.IncompatibleClassChangeError 不兼容的类变化错误。当正在执行的方法所依赖的类定义发生了不兼容的改变时,抛出该异常。一般在修改了应用中的某些类的声明定义而没有对整个应用重新编译而直接运行的情况下,容易引发该错误。
java.lang.InstantiationError 实例化错误。当一个应用试图通过Java的new操作符构造一个抽象类或者接口时抛出该异常.
java.lang.InternalError 内部错误。用于指示Java虚拟机发生了内部错误。
java.lang.LinkageError 链接错误。该错误及其所有子类指示某个类依赖于另外一些类,在该类编译之后,被依赖的类改变了其类定义而没有重新编译所有的类,进而引发错误的情况。
java.lang.NoClassDefFoundError 未找到类定义错误。当Java虚拟机或者类装载器试图实例化某个类,而找不到该类的定义时抛出该错误。
java.lang.NoSuchFieldError 域不存在错误。当应用试图访问或者修改某类的某个域,而该类的定义中没有该域的定义时抛出该错误。
java.lang.NoSuchMethodError 方法不存在错误。当应用试图调用某类的某个方法,而该类的定义中没有该方法的定义时抛出该错误。
java.lang.OutOfMemoryError 内存不足错误。当可用内存不足以让Java虚拟机分配给一个对象时抛出该错误。
java.lang.StackOverflowError 堆栈溢出错误。当一个应用递归调用的层次太深而导致堆栈溢出时抛出该错误。
java.lang.ThreadDeath 线程结束。当调用Thread类的stop方法时抛出该错误,用于指示线程结束。
java.lang.UnknownError 未知错误。用于指示Java虚拟机发生了未知严重错误的情况。
java.lang.UnsatisfiedLinkError 未满足的链接错误。当Java虚拟机未找到某个类的声明为native方法的本机语言定义时抛出。
java.lang.UnsupportedClassVersionError 不支持的类版本错误。当Java虚拟机试图从读取某个类文件,但是发现该文件的主、次版本号不被当前Java虚拟机支持的时候,抛出该错误。
java.lang.VerifyError 验证错误。当验证器检测到某个类文件中存在内部不兼容或者安全问题时抛出该错误。
java.lang.VirtualMachineError 虚拟机错误。用于指示虚拟机被破坏或者继续执行操作所需的资源不足的情况。
java.lang.ArithmeticException 算术条件异常。譬如:整数除零等。
java.lang.ArrayIndexOutOfBoundsException 数组索引越界异常。当对数组的索引值为负数或大于等于数组大小时抛出。
java.lang.ArrayStoreException 数组存储异常。当向数组中存放非数组声明类型对象时抛出。
java.lang.ClassCastException 类造型异常。假设有类A和B(A不是B的父类或子类),O是A的实例,那么当强制将O构造为类B的实例时抛出该异常。该异常经常被称为强制类型转换异常。
java.lang.ClassNotFoundException 找不到类异常。当应用试图根据字符串形式的类名构造类,而在遍历 CLASSPAH之后找不到对应名称的class文件时,抛出该异常。
java.lang.CloneNotSupportedException 不支持克隆异常。当没有实现Cloneable接口或者不支持克隆方法时,调用其clone()方法则抛出该异常。
java.lang.EnumConstantNotPresentException 枚举常量不存在异常。当应用试图通过名称和枚举类型访问一个枚举对象,但该枚举对象并不包含常量时,抛出该异常。
java.lang.Exception 根异常。用以描述应用程序希望捕获的情况。
java.lang.IllegalAccessException 违法的访问异常。当应用试图通过反射方式创建某个类的实例、访问该类属性、调用该类方法,而当时又无法访问类的、属性的、方法的或构造方法的定义时抛出该异常。
java.lang.IllegalMonitorStateException 违法的监控状态异常。当某个线程试图等待一个自己并不拥有的对象(O)的监控器或者通知其他线程等待该对象(O)的监控器时,抛出该异常。
java.lang.IllegalStateException 违法的状态异常。当在Java环境和应用尚未处于某个方法的合法调用状态,而调用了该方法时,抛出该异常。
java.lang.IllegalThreadStateException 违法的线程状态异常。当县城尚未处于某个方法的合法调用状态,而调用了该方法时,抛出异常。
java.lang.IndexOutOfBoundsException 索引越界异常。当访问某个序列的索引值小于0或大于等于序列大小时,抛出该异常。
java.lang.InstantiationException 实例化异常。当试图通过 newInstance()方法创建某个类的实例,而该类是一个抽象类或接口时,抛出该异常。
java.lang.InterruptedException 被中止异常。当某个线程处于长时间的等待、休眠或其他暂停状态,而此时其他的线程通过Thread的interrupt方法终止该线程时抛出该异常。
java.lang.NegativeArraySizeException 数组大小为负值异常。当使用负数大小值创建数组时抛出该异常。
java.lang.NoSuchFieldException 属性不存在异常。当访问某个类的不存在的属性时抛出该异常。
java.lang.NoSuchMethodException 方法不存在异常。当访问某个类的不存在的方法时抛出该异常。
java.lang.NullPointerException 空指针异常。当应用试图在要求使用对象的地方使用了 null时,抛出该异常。譬如:调用null对象的实例方法、访问null对象的属性、计算null对象的长度、使用throw语句抛出null等等。
java.lang.NumberFormatException 数字格式异常。当试图将一个String转换为指定的数字类型,而该字符串确不满足数字类型要求的格式时,抛出该异常。
java.lang.RuntimeException 运行时异常。是所有 Java虚拟机正常操作期间可以被抛出的异常的父类。
java.lang.SecurityException 安全异常。由安全管理器抛出,用于指示违反安全情况的异常。
java.lang.StringIndexOutOfBoundsException 字符串索引越界异常。当使用索引值访问某个字符串中的字符,而该索引值小于0或大于等于序列大小时,抛出该异常。
java.lang.TypeNotPresentException 类型不存在异常。当应用试图 -
Android异常处理Android异常处理
2016-05-25 07:26:50比如说出现空指针 我不弹框 直接结束掉出错的actvity -
Android异常捕获防止崩溃弹框
2016-01-05 13:47:19Android异常捕获放置崩溃弹框创建异常捕获handler类
import android.app.ActivityManager; import android.app.AlarmManager; import android.app.Application; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.os.Looper; import android.widget.Toast; import com.magus.youxiclient.R; import com.magus.youxiclient.util.Log; /** * Created by yangshuai in the 10:53 of 2016.01.05 . */ public class MyUncaughtExceptionHandler implements Thread.UncaughtExceptionHandler { private static final String TAG = "ExceptionHandler"; private Thread.UncaughtExceptionHandler mUncaughtExceptionHandler; private Application mApplication; public MyUncaughtExceptionHandler(Application context) { mApplication = context; mUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler(); } @Override public void uncaughtException(Thread thread, Throwable ex) { if (mApplication.getPackageName().equals(getProcessName(mApplication))) { if (Log.showLog) { mUncaughtExceptionHandler.uncaughtException(thread, ex); } else { toastSorry(); restart(); android.os.Process.killProcess(android.os.Process.myPid()); } } else { android.os.Process.killProcess(android.os.Process.myPid()); } } private void toastSorry() { new Thread(){ @Override public void run() { Looper.prepare(); Toast.makeText( mApplication.getApplicationContext(), "Program is abnormal, is about to restart the application.", Toast.LENGTH_SHORT).show(); Looper.loop(); } }.start(); } public static String getProcessName(Context appContext) { String currentProcessName = ""; int pid = android.os.Process.myPid(); ActivityManager manager = (ActivityManager) appContext.getSystemService(Context.ACTIVITY_SERVICE); for (ActivityManager.RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()) { if (processInfo.pid == pid) { currentProcessName = processInfo.processName; break; } } return currentProcessName; } /* 重启应用 */ private void restart() { try { Thread.sleep(4000); } catch (InterruptedException e) { android.util.Log.e(TAG, "error : " + e); } Intent intent = new Intent( mApplication.getApplicationContext(), MainActivity.class); PendingIntent restartIntent = PendingIntent.getActivity( mApplication.getApplicationContext(), 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK); //退出程序 AlarmManager mgr = (AlarmManager) mApplication.getSystemService(Context.ALARM_SERVICE); mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 1000, restartIntent); // 1秒钟后重启应用 } }
Application
import android.app.Application; import com.magus.trainingfirstapp.exception.CrashHandler; /** * Created by yangshuai on 2015/10/13 0013 11:01. */ public class MApplication extends Application { @Override public void onCreate() { super.onCreate(); /* 异常捕获(debug 时不捕获异常) */ Thread.setDefaultUncaughtExceptionHandler(new MyUncaughtExceptionHandler(this)); } }
-
Android异常:android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original
2016-06-16 09:21:11Android异常:android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views. 出现这个异常的原因是你在子线程中修改了主线程中的组件... -
android异常:android.view.ViewRootImpl$CalledFromWrongThreadException
2014-12-13 16:51:17android异常:android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views. 出现这个异常的原因是你在子线程中修改了主线程中的组件... -
Android 异常解决方法汇总
2015-04-22 11:25:16Android 异常解决方法汇总 1)异常:Android中引入第三方Jar包的方法(java.lang.NoClassDefFoundError解决办法) 1、在工程下新建lib文件夹,将需要的第三方包拷贝进来。 2、将引用的第三方包,添加进工作的... -
Android异常总结
2019-02-21 08:32:37异常 概述 Java程序在运行过程中出现的错误 分类 Error:服务器宏机,数据库崩溃等 Exception 编译时异常:Java程序必须显示处理,否则程序会发生错误,无法通过编译,如:IOException,SQLException等 当函数中存在... -
CrashHandler实现UncaughtExceptionHandler拦截android异常
2017-09-11 20:15:48手写CrashHandler实现UncaughtExceptionHandler拦截android异常 有点复杂,虽然知道原理,但是并不好从哪开始写了。。。。。。 首先这是个需要在整个app运行状态中都需要存在的对象,所以需要在application里初始... -
android异常compileDebugJavaWithJavac
2017-06-05 11:41:57使用DataBinding变异异常: Error:Execution failed for task ':main:compileDebugJavaWithJavac'. > java.lang.RuntimeException: failure, see logs for details. Exception while handling step android.... -
android 异常UndeclaredThrowableException
2016-03-07 01:43:09我报了一个java.lang.reflect.UndeclaredThrowableException异常,错误代码显示是mTencent.login(getActivity(), "all", loginListener);这句,我在做qq第三方登录,这个事qq登录内部方法。这个错误我好想第一次遇到... -
Android异常之NoClassDefFoundError
2019-09-03 11:34:48Android开发时如果出现NoClassDefFoundError异常, # main(1) java.lang.NoClassDefFoundError java.util.Objects 该异常表示找不到类定义,当JVM或者ClassLoader实例尝试装载该类的定义(这通常是一个方法调用... -
android 异常收集
2016-06-12 17:54:24当开发了一个APP,发布出去之后难免会碰到系统异常的情况,而且大多数的异常是不可重现的。经常遇到的情况就是平台迁移之后,数据与原来存在差异,比如说实际情况种的数据和开发和测试不一样。还有就是测试覆盖面不... -
android异常笔记
2015-12-23 17:36:461.Activity ca.ct.activity.OBaccaratActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@42db0500 that was originally added here ~~~ 出现这种错误的情景是:当我... -
手写CrashHandler实现UncaughtExceptionHandler拦截android异常
2015-04-30 16:16:13手写CrashHandler实现UncaughtExceptionHandler拦截android异常作者:码字员小D有点复杂,虽然知道原理,但是并不好从哪开始写了。。。。。。首先这是个需要在整个app运行状态中都需要存在的对象,所以需要在... -
Android 异常捕获处理
2015-04-06 08:15:05android 应用程序,只有稍有一点错误就会自行关闭。我怎么样捕获异常信息并且给用户一个提示 -
android异常 More than one file was found with OS independent path 'META-INF/XXX'
2017-11-09 10:10:54android 异常总结:一个文件在jar包中出现多次。 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. > More than one file was found with OS independent path 'META-... -
android 异常问题总结
2016-05-14 14:53:08} 再次运行,就不会再打印下面的log了 Gradle 编译异常 原因,你的jdk环境是1.8,你也可以换成1.7(应该就不会有这问题了) Error:Error converting bytecode to dex: Cause: Dex cannot parse version 52 byte code.... -
android 异常解决方案汇总
2019-07-05 05:18:221)异常:Android中引入第三方Jar包的方法(java.lang.NoClassDefFoundError解决办法) 1、在工程下新建lib文件夹,将需要的第三方包拷贝进来。 2、将引用的第三方包,添加进工作的build path。选中jar包->Build ... -
android异常处理
2013-03-29 10:19:57而Java提供了一套比较优秀的异常处理机制: 1、使开发人员不必编写特殊代码来测试返回值就能发现问题, 2、在语法结构就把正常的代码和异常处理的代码清晰的分开来, 3、允许我们使用相同的异常处理... -
Android异常:android.os.TransactionTooLargeException
2017-04-28 10:43:26因为服务器开发限制,返回给我的图片资源都是使用base64编码后的String字符串,而产品要求将所有的图片能够支持Android图片库的浏览方式,于是想都没想,直接将返回的List直接用 intent.putStringArrayListExtra(... -
Android 异常崩溃日志,捕捉并保存到本地
2016-09-12 16:20:02Android 异常崩溃日志,捕捉并保存到本地; 前几天因为在省公安厅做一个通讯类之类的应用;碰到个问题,就是download人员信息将信息保存到本地数据库完成的时候,菊花转还没有dismission掉程序就崩溃了;当然... -
android异常——aapt.exe已停止工作
2014-03-10 12:36:14android异常——aapt.exe已停止工作 在android开发时,当build项目时,发生如下异常: aapt.exe已停止工作,其他无任何错误提示,发生这个错误一般是资源文件或是xml文件中有错误造成的。 解决方法: clean... -
Android异常统一处理
2017-07-17 10:54:59因为Application是全局的,所以创建自己的application然后实现Thread.UncaughtExceptionHandler,然后在需要实现的方法里面统一处理异常 @Override public void uncaughtException(Thread thread, Throwable ex) ...