Android异常分析
对自己日常开发中所遇到的一些异常和处理方法进行分析与记录
萌动小彩笔
这个作者很懒,什么都没留下…
展开
-
Android 解决jar包、依赖冲突问题
在工作过程中我们经常会遇到项目中jar包或者依赖重复而导致的错误信息,这个时候虽然我们知道原因是因为jar包或者依赖重复而导致,但是并不知道具体是哪一个重复了,这个时候我们就需要快速定位重复的jar包或者依赖。这里我们可以使用Android Studio的Terminal命令快速去定位相关问题:gradlew assembleDebug --stacktrace命令,编译过程中会提示相关错误信...原创 2018-12-16 14:22:00 · 2055 阅读 · 0 评论 -
Android 运行带有Cordova工程报“No installed build tools found......"问题
运行带有Cordova工程的项目时,可能会遇到上面显示的错误。导致这个错误的原因如下代码显示的SDK路径问题所导致。 最简单的解决方法就是将System.getenv("ANDROID_HOME")改为null运行即可: ...原创 2018-06-26 15:02:42 · 1064 阅读 · 0 评论 -
Android 下载NDK报mips64el-linux-android-strip找不到错误分析
在我们使用Android Studio去下载NDK的时候可能会遇到如图所示的错误信息,这个信息是因为我们的NDK版本问题所导致的,所以我们可以根据报错的路径去替换掉其NDK版本。我们先删除掉Android/sdk/ndk-bundle路径下的文件,然后通过官网去下载相应的版本并解压,将其解压后的所有文件拷贝到Android/sdk/ndk-bundle即可。...原创 2018-06-08 17:43:31 · 3657 阅读 · 0 评论 -
Android java.lang.ArrayIndexOutOfBoundsException: length=2; index=2
当我们的项目中遇到了下标超出问题时而且没有给出具体哪段代码超出的错误日志时,这个问题是因为我们的适配器中getViewTypeCount()类型数量超出而导致的。 @Override public int getViewTypeCount() { return 2; } 查看自己定义的类型数量是否与之匹配?修改即可。原创 2017-06-06 10:17:21 · 3260 阅读 · 0 评论 -
Android Unable to delete file/directory 错误
当我们在编译代码的过程中,往往会遇到类似上面的错误信息,在这里记录下自己解决此问题的方法: 删除项目中build文件,重新编译即可(app目录下的build文件)通过build—clean project项目,然后重新编译。也可通过打开gradle projects下的app—task—build—clean双击即可,如图:原创 2017-06-12 10:26:03 · 1780 阅读 · 0 评论 -
Android Lint task执行失败
Android Lint task执行失败原因原创 2017-06-16 10:16:37 · 508 阅读 · 0 评论 -
Android permission denied for window type 2002
Android6.0以上使用WindownManager实现悬浮窗会出现如图错误信息,这个是因为在Android6.0以上我们需要去打开授权应用ACTION_MANAGE_OVERLAY_PERMISSION权限才可以正常使用悬浮窗。@Override protected void onCreate(Bundle savedInstanceState) { super.onC原创 2017-06-16 18:06:08 · 18401 阅读 · 0 评论 -
Android java.lang.IllegalArgumentException: Unterminated quote
开发过程中遇到时间转化问题,想把时间转化成所示的格式,采用SimpleDateFormat进行转化会报如上所示错误信息。这里发现我们在转化一些比较特殊的时间格式时,可以使用Calendar进行转化。 Calendar calendar = Calendar.getInstance();calendar.setTime(new Date(dataBean.getCostTime()));ti原创 2017-06-21 14:26:05 · 3632 阅读 · 1 评论 -
Android Manifest merger failed with multiple errors,see logs
项目中添加了一个依赖包,编译项目时出现如图所示的错误信息,当我们遇到这个错误的时候,我们可以发现最后一行显示的意思是我们可以在控制台查看完整的输出信息,这时候我们只需要双击这一行。 这样我们就可以在右边控制台中看见错误日志,我们只需要仔细阅读,根据错误信息提示,就可以解决此问题。哈哈!原创 2017-06-22 10:22:37 · 634 阅读 · 0 评论 -
Android 分析android.view.WindowManager$BadTokenException: Unable to add window异常
在项目中遇到如图所示错误信息,根据提示我们可知这是Dialog在show的时候失去了它的载体。对AlertDialog来说,它需要依赖一个View,而View是对应于Activity的。所以当Activity销毁后才调用show的时候就会报上面所示的错误。当然我们可以通过判断其承载它的view是否被销毁从而去将它show出来。 if (!isFinishing()) { dialog原创 2017-07-05 19:31:28 · 337 阅读 · 0 评论 -
Android 分析android.view.WindowLeaked错误
根据上图所示,我们知道leaked是泄露的意思,WindowLeaked应该就是窗体泄露,此异常是我们在显示对话框时承载它的Activity被finish掉所导致的。所以我们在使用对话框时要先将对话框关闭再将Acivity销毁掉。这样就不会报上述错误了,哈哈!原创 2017-07-05 20:07:19 · 275 阅读 · 0 评论 -
Android 解决java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState异常
项目中偶现如图所示错误信息,我们可以根据错误提示发现,此提示意思是说我们不能再onSaveInstanceState()方法后调用commit()。那么我们什么时候会在onSaveInstanceState()后调用commit()呢?举个例子:当我们的Activity处于后台时调用了commit()这个时候就会报上图所示的错误信息。我们可以将commit()替换成commitAllowingSta原创 2017-07-07 11:15:42 · 879 阅读 · 0 评论 -
Android app:transformNativeLibsWithStripDebugSymbolForDebug错误分析
运行项目在模拟器中出现如图所示的错误信息,在网上查阅了一些资料,大概都是以下几种方法: 删除.gradle文件,重新进行编译。对NDK进行升级。删除local.properties中的ndk.dir。 以上几种方法我都进行了尝试,但都没有成功,这让我很是头疼,于是自己仔细看了看这个错误信息,感觉像是Jni里的文件导致的。以下是我的Jni里的文件: 然后我试着将64位的文件全部原创 2017-07-10 14:43:06 · 5191 阅读 · 0 评论 -
Android 使用Glide 报You cannot start a load for a destroyed activity异常
最近测试在测试的时候发现项目在返回的时候偶现崩溃现象,经过抓日子发现是Glide加载图片时所报的错误,根据错误信息提示意思指Glide在加载的过程中activity被销毁掉了,导致程序崩溃。我们都知道Glide加载机制是与Fragment和Activity生命周期息息相关,在Glide中,图片的加载会跟随这Activity或者Fragment的生命周期进行相应的加载,停止等操作。原创 2017-08-03 08:55:37 · 4410 阅读 · 1 评论 -
Android 解决Only the original thread that created a view hierarchy can touch its views异常
项目中突然报如上错误信息,根据日志发现是我在子线程中调用了适配器......原创 2017-08-08 14:33:19 · 2670 阅读 · 0 评论 -
Android 解决No resource found that matches android:TextAppearance.Material.Widget.Button.Inverse问题
今天项目中添加了一个网络依赖,运行时报了如图所示的错误信息......原创 2017-09-04 11:44:53 · 416 阅读 · 0 评论 -
Android 解决java.lang.IndexOutOfBoundsException: Inconsistency detected错误
今天测试突然找我说项目在刷新数据时偶现crash情况,经过反复测试终于重现出此错误日志......原创 2017-09-13 18:41:21 · 6084 阅读 · 0 评论 -
Android 解决java.lang.NoClassDefFoundError: retrofit2.Platform$Android错误
在项目中使用Retrofit时出现如图所示错误信息......原创 2017-09-20 09:47:52 · 1910 阅读 · 0 评论 -
Android 使用Jenkins打包解决':app:mergeReleaseResources'.问题
在使用Jenkins打包的时候出现如图所示错误信息,这个错误是因为构建缓存的新特性。它使用默认的构建缓存文件夹,这是一个很长的路径。由于文件路径过长所以导致资源文件打不开。您可以通过添加android来禁用构建缓存。解决方法: 在项目中gradle.properties文件添加android.enableBuildCache=false这段代码。提交到Git或SVN上再次构建即可欢迎关注原创 2017-10-20 11:12:21 · 5264 阅读 · 0 评论 -
Android 解决Aapt2Exception错误
如图所示,当我们把Android Studio升级到3.0版本并且gradle也同时升级到了3.0的时候打开项目可能会出现以上错误信息,这个是因为在gradle 3.0.0中AAPT2是默认打开的,所以我们只需要在项目的gradle.properties中添加android.enableAapt2=false,sync后就编译通过了。...原创 2018-03-03 08:37:46 · 5224 阅读 · 0 评论