Android异常笔记

Android面试笔记之异常anr&oom详解 异常anr&oom面试详解前言一、anr1、什么是anr2、ANR的触发>1、Activity、BroadCastReceiver、Service触发ANR的时间>2、引起ANR的原因>3、ANR信息查看3、如何解决二、oom1、什么是OOM2、OOM解决方法总结 前言 Android面试基本知识点->异常anr&oom面试详解问题记录,后续会完善。 提示:以下是本篇文章正文内容,下面案例可供参考 一、anr 1、什么是anr 在 Android 系统中,如果应 阅读详情


皇家豆瓣酱

16
原创
10
转载
3
译文
3
评论
7109
访问

2015 十二月
23
原

android异常笔记

   

1.Activity ca.ct.activity.OBaccaratActivity has leaked window com.android.internal.policy.impl.PhoneWindow$ DecorView@42db0500 that was originally added here
       ~~~ 出现这种 错误的情景是:当我点击返回键,退出一个activity进入另一个activity的时候,有一个dialog,或者是其他的组件在提示,但是这个时候我着急又很快的按了一下返回键就报这样的错误
       ~~~  解决方法:在dialog中添加一下代码
[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. public void onDestroy(){  
  2.     super.onDestroy();  
  3.     if(dialog !=null){  
  4.         dialog.dismiss();  
  5.         dialog =null;  
  6.     }  
  7. }  
2.Fatal signal 11 (SIGSEGV) at 0x00000040 (code=1), thread 20476 (.example.new)
        ~~~出现错误的情景:同样的,某个页面有视频播放器,调用surface,和jni,当我点击返回键,然后在很快的点击一下以后,会报上面的东西,但是并没有java的异常或者其他提示信息出现
        ~~~解决方法:目前并没有找到解决的办法。也不知道什么原因。但是有一篇博客写的和我的qi类似,但是照着他的方法并没有解决我的问题。http://blog.youkuaiyun.com/sonikk/article/details/9217181
3.android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
    ~~~在非主线程中直接设置组件会抛出这样的异常。比如我为了简单在线程中为TextView.setText().这个在低版本中是可以运行。高版本中操作页面的必须在主线程中。这里只能用handler
4,ava.lang.IllegalStateException: Could not execute method of the activity
Caused by: java.lang.reflect.InvocationTargetException
Caused by: java.lang.NullPointerException
说白了就是无法执行和activity相关的方法,为什么无法执行呢,因为你给系统的是空引用,出现空指针错误
造成这种因素的原因很多,我目前已知的,就是代码的顺序问题,在onCreate方法中。

5.has leaked window com.android.internal.policy.impl.PhoneWindow$ that was originally added here

~~~出现错误的情景

经常在应用中需要处理一些耗时的工作,诸如读取大文件、访问网络资源等。为了避免因程序假死而带来的糟糕用户体验,通常我们可以通过线程+Handler或者Android提供的AsyncTask来解决该问题,并一般以ProgressDialog等提示性控件来告知用户当前的程序进度。而标题中描述的异常则会常常出现在这样的场景中,并且往往掩盖了导致异常的真正的罪魁祸首。

  ~~~问题原因:

从异常描述中,大致的意思是存在窗口句柄泄露,即未能及时销毁某个PhoneWindow。而这往往误导了我们,把过多的精力放在查找所谓的内存泄露上了。其实存在这么一种情况,即因我们在非主线程中的某些操作不当而产生了一个严重的异常,从而强制当前Activity被关闭。而在关闭的同时,却没能及时的调用dismiss来解除对ProgressDialog等的引用,从而系统抛出了标题中的错误,而掩盖了真正导致这个错误的异常信息。

  ~~~解决方法之一:

本解决方法并不能真正的解决问题,但是在一定程度上可以将真正导致错误的异常信息显露出来。即重写Activity的onDestroy方法,在方法中调用dismiss来解除对ProgressDialog等的引用。

6.遇到过两次,在RelativeLayout中当我将两个组件调换位置一个在上一个在下时,在activity中实例化这个组件就会报类型转换异常,目前没找到问题原因。

7.Unable to start activity ComponentInfo{com.example.new855/ca.ct.activity.FanTanActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class
    Caused by: java.lang.OutOfMemoryError:
            理由以及原因:At runtime, Android resize's images based on need (based on the screen size and resolution). It uses Bitmap's for doing the resizing internally. Which, obviously, is very memory intensive (kinda allocates memory like crazy). One quick way to fix such issues can be, that you copy all drawable files to drawable-ldpi, mdpi, hdpi folders. This way android will just pick up the files from these folders and not resize them.

8.IllegalArgumentException: View not attached to window manager
引起的原因:A应用在使用Intent显示启动其他应用,当关闭其他应用显A应用界面时报错。

解决方法1:

A应用使用startActivityForResult(intent)启动其他应用

解决方法2:

关闭其他应用时每次都使用Intent重新拉起一遍A应用

在A中启动B,B中有线程操作,结束时涉及到对话框的dismiss。如果在操作尚未结束时,按下HOME键,线程后台操作。此时重新进去A,等到线程操作完成就会出现这个异常。此时应该做一个判断,如下:

[java] view plain copy
在CODE上查看代码片 派生到我的代码片
  1. // Dismiss the Dialog only when the parent Activity is still alive.  
  2. if (SelectContactsActivity!=null&&!SelectContactsActivity.this.isFinishing()) {  
  3.       mProgressDialog.dismiss();  
  4. }  

 
        
9.IllegalArgumentException: connection is null
  有时候同样的代码,在一个机子上可以正常执行,在另一个机子上就会报这也的异常。这是因为绑定服务的时候bindService(intent, null, BIND_AUTO_CREATE);这也写的,但是高版本中ServiceConnection不能为空。所以要new一个出来。应该这也写
[java] view plain copy
在CODE上查看代码片 派生到我的代码片
  1. bindService(intent, new ServiceConnection() {  
  2.     @Override  
  3.     public void onServiceDisconnected(ComponentName name) {  
  4.         // TODO Auto-generated method stub  
  5.     }  
  6.     @Override  
  7.     public void onServiceConnected(ComponentName name, IBinder service) {  
  8.         // TODO Auto-generated method stub  
  9.     }  
  10. }, BIND_AUTO_CREATE);    
 
        

10、 你后台的Activity被系统回收怎么办:onSaveInstanceState

  当你的程序中某一个Activity A 在运行时中,主动或被动地运行另一个新的Activity B  这个时候A会执行

  Java代码

[java] view plain copy
在CODE上查看代码片 派生到我的代码片
  1.   public void onSaveInstanceState(Bundle outState) {  
  2.     super.onSaveInstanceState(outState);  
  3.     outState.putLong("id", 1234567890);  
  4.   }  
  5. public void onSaveInstanceState(Bundle outState) {  
  6.         super.onSaveInstanceState(outState);  
  7.         outState.putLong("id", 1234567890);  
  8. }  

  B 完成以后又会来找A, 这个时候就有两种情况,一种是A被回收,一种是没有被回收,被回 收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上参数savedInstanceState,没被收回的就还是onResume就好了。

  savedInstanceState是一个Bundle对象,你基本上可以把他理解为系统帮你维护的一个Map对象。在onCreate()里你可能会用到它,如果正常启动onCreate就不会有它,所以用的时候要判断一下是否为空。


11. 如何将SQLite数据库(dictionary.db文件)与apk文件一起发布?

 

  解答:可以将dictionary.db文件复制到Eclipse Android工程中的resaw目录中。所有在resaw目录中的文件不会被压缩,这样可以直接提取该目录中的文件。可以将dictionary.db文件复制到resaw目录中

12.Gradle DSL method not found: 'runProguard()'

要让sync成功,改下gradle的版本就可以了,如下:

dependencies {         classpath 'com.android.tools.build:gradle:0.14.1'         // NOTE: Do not place your application dependencies here; they belong         // in the individual module build.gradle files     }

但是真正的解决办法是将一下内容更换就可以

[html] view plain copy
在CODE上查看代码片 派生到我的代码片
  1. buildTypes {  
  2.     release {  
  3.         runProguard false // 已经被废弃并且停止使用了  
  4.         ......  
  5.     }  
  6. }  

new:

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. buildTypes {  
  2.     release {  
  3.         minifyEnabled false // 替代的方式  
  4.         ......  
  5.     }  
  6. }  

13:Gradle version 2.10 is required. Current version is 2.8 Error

<code style="box-sizing: border-box; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, sans-serif;font-size:undefined; padding: 0px; color: inherit; white-space: inherit; border-radius: 0px; word-break: break-word; margin: 0px; border: 0px; background-color: transparent;"><span class="pln" style="box-sizing: border-box; margin: 0px; padding: 0px; font-family: 'Microsoft YaHei'; border: 0px; color: rgb(48, 51, 54);">https</span><span class="pun" style="box-sizing: border-box; margin: 0px; padding: 0px; font-family: 'Microsoft YaHei'; border: 0px; color: rgb(48, 51, 54);">:</span><span class="com" style="box-sizing: border-box; margin: 0px; padding: 0px; font-family: 'Microsoft YaHei'; border: 0px; color: rgb(133, 140, 147);">//services.gradle.org/distributions/gradle-2.10-all.zip  从该链接下载文件</span></code>
Settings > Builds,Execution,Deployment > Build Tools > Gradle >Gradle home path。 修改2.8的目录改为2.10

 
        
 
        
 
       

 

 
 

发表评论


  暂无评论

 
img

皇家豆瓣酱

等级:

排名:千里之外

博客专栏
文章分类
文章存档
阅读排行
评论排行
推荐文章
最新评论
img

皇家豆瓣酱

16
原创
10
转载
3
译文
3
评论
7109
访问

2015 十二月
23
原

android异常笔记

   

1.Activity ca.ct.activity.OBaccaratActivity has leaked window com.android.internal.policy.impl.PhoneWindow$ DecorView@42db0500 that was originally added here
       ~~~ 出现这种 错误的情景是:当我点击返回键,退出一个activity进入另一个activity的时候,有一个dialog,或者是其他的组件在提示,但是这个时候我着急又很快的按了一下返回键就报这样的错误
       ~~~  解决方法:在dialog中添加一下代码
[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. public void onDestroy(){  
  2.     super.onDestroy();  
  3.     if(dialog !=null){  
  4.         dialog.dismiss();  
  5.         dialog =null;  
  6.     }  
  7. }  
2.Fatal signal 11 (SIGSEGV) at 0x00000040 (code=1), thread 20476 (.example.new)
        ~~~出现错误的情景:同样的,某个页面有视频播放器,调用surface,和jni,当我点击返回键,然后在很快的点击一下以后,会报上面的东西,但是并没有java的异常或者其他提示信息出现
        ~~~解决方法:目前并没有找到解决的办法。也不知道什么原因。但是有一篇博客写的和我的qi类似,但是照着他的方法并没有解决我的问题。http://blog.youkuaiyun.com/sonikk/article/details/9217181
3.android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
    ~~~在非主线程中直接设置组件会抛出这样的异常。比如我为了简单在线程中为TextView.setText().这个在低版本中是可以运行。高版本中操作页面的必须在主线程中。这里只能用handler
4,ava.lang.IllegalStateException: Could not execute method of the activity
Caused by: java.lang.reflect.InvocationTargetException
Caused by: java.lang.NullPointerException
说白了就是无法执行和activity相关的方法,为什么无法执行呢,因为你给系统的是空引用,出现空指针错误
造成这种因素的原因很多,我目前已知的,就是代码的顺序问题,在onCreate方法中。

5.has leaked window com.android.internal.policy.impl.PhoneWindow$ that was originally added here

~~~出现错误的情景

经常在应用中需要处理一些耗时的工作,诸如读取大文件、访问网络资源等。为了避免因程序假死而带来的糟糕用户体验,通常我们可以通过线程+Handler或者Android提供的AsyncTask来解决该问题,并一般以ProgressDialog等提示性控件来告知用户当前的程序进度。而标题中描述的异常则会常常出现在这样的场景中,并且往往掩盖了导致异常的真正的罪魁祸首。

  ~~~问题原因:

从异常描述中,大致的意思是存在窗口句柄泄露,即未能及时销毁某个PhoneWindow。而这往往误导了我们,把过多的精力放在查找所谓的内存泄露上了。其实存在这么一种情况,即因我们在非主线程中的某些操作不当而产生了一个严重的异常,从而强制当前Activity被关闭。而在关闭的同时,却没能及时的调用dismiss来解除对ProgressDialog等的引用,从而系统抛出了标题中的错误,而掩盖了真正导致这个错误的异常信息。

  ~~~解决方法之一:

本解决方法并不能真正的解决问题,但是在一定程度上可以将真正导致错误的异常信息显露出来。即重写Activity的onDestroy方法,在方法中调用dismiss来解除对ProgressDialog等的引用。

6.遇到过两次,在RelativeLayout中当我将两个组件调换位置一个在上一个在下时,在activity中实例化这个组件就会报类型转换异常,目前没找到问题原因。

7.Unable to start activity ComponentInfo{com.example.new855/ca.ct.activity.FanTanActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class
    Caused by: java.lang.OutOfMemoryError:
            理由以及原因:At runtime, Android resize's images based on need (based on the screen size and resolution). It uses Bitmap's for doing the resizing internally. Which, obviously, is very memory intensive (kinda allocates memory like crazy). One quick way to fix such issues can be, that you copy all drawable files to drawable-ldpi, mdpi, hdpi folders. This way android will just pick up the files from these folders and not resize them.

8.IllegalArgumentException: View not attached to window manager
引起的原因:A应用在使用Intent显示启动其他应用,当关闭其他应用显A应用界面时报错。

解决方法1:

A应用使用startActivityForResult(intent)启动其他应用

解决方法2:

关闭其他应用时每次都使用Intent重新拉起一遍A应用

在A中启动B,B中有线程操作,结束时涉及到对话框的dismiss。如果在操作尚未结束时,按下HOME键,线程后台操作。此时重新进去A,等到线程操作完成就会出现这个异常。此时应该做一个判断,如下:

[java] view plain copy
在CODE上查看代码片 派生到我的代码片
  1. // Dismiss the Dialog only when the parent Activity is still alive.  
  2. if (SelectContactsActivity!=null&&!SelectContactsActivity.this.isFinishing()) {  
  3.       mProgressDialog.dismiss();  
  4. }  


         
9.IllegalArgumentException: connection is null
  有时候同样的代码,在一个机子上可以正常执行,在另一个机子上就会报这也的异常。这是因为绑定服务的时候bindService(intent, null, BIND_AUTO_CREATE);这也写的,但是高版本中ServiceConnection不能为空。所以要new一个出来。应该这也写
[java] view plain copy
在CODE上查看代码片 派生到我的代码片
  1. bindService(intent, new ServiceConnection() {  
  2.     @Override  
  3.     public void onServiceDisconnected(ComponentName name) {  
  4.         // TODO Auto-generated method stub  
  5.     }  
  6.     @Override  
  7.     public void onServiceConnected(ComponentName name, IBinder service) {  
  8.         // TODO Auto-generated method stub  
  9.     }  
  10. }, BIND_AUTO_CREATE);    

         

10、 你后台的Activity被系统回收怎么办:onSaveInstanceState

  当你的程序中某一个Activity A 在运行时中,主动或被动地运行另一个新的Activity B  这个时候A会执行

  Java代码

[java] view plain copy
在CODE上查看代码片 派生到我的代码片
  1.   public void onSaveInstanceState(Bundle outState) {  
  2.     super.onSaveInstanceState(outState);  
  3.     outState.putLong("id", 1234567890);  
  4.   }  
  5. public void onSaveInstanceState(Bundle outState) {  
  6.         super.onSaveInstanceState(outState);  
  7.         outState.putLong("id", 1234567890);  
  8. }  

  B 完成以后又会来找A, 这个时候就有两种情况,一种是A被回收,一种是没有被回收,被回 收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上参数savedInstanceState,没被收回的就还是onResume就好了。

  savedInstanceState是一个Bundle对象,你基本上可以把他理解为系统帮你维护的一个Map对象。在onCreate()里你可能会用到它,如果正常启动onCreate就不会有它,所以用的时候要判断一下是否为空。


11. 如何将SQLite数据库(dictionary.db文件)与apk文件一起发布?

 

  解答:可以将dictionary.db文件复制到Eclipse Android工程中的resaw目录中。所有在resaw目录中的文件不会被压缩,这样可以直接提取该目录中的文件。可以将dictionary.db文件复制到resaw目录中

12.Gradle DSL method not found: 'runProguard()'

要让sync成功,改下gradle的版本就可以了,如下:

dependencies {         classpath 'com.android.tools.build:gradle:0.14.1'         // NOTE: Do not place your application dependencies here; they belong         // in the individual module build.gradle files     }

但是真正的解决办法是将一下内容更换就可以

[html] view plain copy
在CODE上查看代码片 派生到我的代码片
  1. buildTypes {  
  2.     release {  
  3.         runProguard false // 已经被废弃并且停止使用了  
  4.         ......  
  5.     }  
  6. }  

new:

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. buildTypes {  
  2.     release {  
  3.         minifyEnabled false // 替代的方式  
  4.         ......  
  5.     }  
  6. }  

13:Gradle version 2.10 is required. Current version is 2.8 Error

https://services.gradle.org/distributions/gradle-2.10-all.zip  从该链接下载文件
Settings > Builds,Execution,Deployment > Build Tools > Gradle >Gradle home path。 修改2.8的目录改为2.10


         

         

        

 

 
 

发表评论


  暂无评论

 
img

皇家豆瓣酱

等级:

排名:千里之外

博客专栏
文章分类
文章存档
阅读排行
评论排行
推荐文章
最新评论
img
学习笔记之Android利用UncaughtExceptionHandler捕获全局异常 一、概述 现如今,Android手机越发的普及,手机的品牌与型号五花八门、Android版本的不同,在开发过程中运行良好的app到了发布上线后安装到某款手机上说不定就出现异常崩溃的现象,开发者不可能在所有的设备逐个调试,所以在apk发布上线后,如果出现了崩溃现象,应及时捕获该设备导致崩溃的日志信息,这对于版本维护bug修复帮助极大,那么如何在app出现crash的情况下捕获设备的参数和较详细的异 阅读详情

相关推荐

AndroidStudio_安卓原生开发_全局异常处理_并记录系统错误日志---Android原生开发工作笔记138

有时候写的android程序,总会有一些你预料不到的错误,有些程序,用的人少了没事,用的多了就有问题,时间短没事,持续运行时间长了就有问题,所以,把可能的异常全部

添柴程序猿的专栏 776

Dialog使用时has leaked window...that was originally added here错误

错误提示android.view.WindowLeaked: Activity … has leaked window … that was originally added here分析:经常在应用中需要处理一些耗时的工作,诸如读取大文件、访问网络资源等。为了避免因程序假死而带来的糟糕用户体验,通常我们可以通过线程+Handler或者Android提供的AsyncTask来解决该问题,并一般以Di

Maxi的专栏 1万+

Molflow新手必看:Facet基础操作全解析(从2D建模到3D拉伸)

本文为Molflow新手提供了Facet基础操作的全面解析,涵盖从2D图形创建到3D模型拉伸的完整流程。详细介绍了Facet作为几何建模基石的核心概念、顶点编辑、布尔运算以及拉伸、放样等关键操作,并深入讲解了如何为其配置物理参数以实现真空系统的蒙特卡洛模拟。

prometheus9mon的博客 417

that was originally added here

错误:Activity com.jixtech.acplay.activitys.HomeActivity has leaked window DecorView@ee21a5f[HomeActivity] that was originally added here 导致错误的是

西红柿超级无敌好吃的博客 1856

ComfyUI中一个超好用的变量管理类节点-KJNodes

在AI绘图中,ComfyUI的热度开始慢慢起来一些,但是这个软件在使用的过程中,需要很多连线,仅仅一个最简单的动画生成,就需要连接这么多线条,而且有些线会飞的很远,看起来就很不美观,尤其是一些复杂工作流,连接到最后自己可能已经分不太清楚到底连接好了没有。今天在研究C站的大佬们的工作流的时候,发现一个有意思的工作流,看起来大概是这种感觉:干净整洁。他用到了KJNodes这么个节点来管理变量,git上星标也不算很多,所以我想很多朋友可能还不知道,所以这里简单介绍下用法。

聚梦小课堂 7521

数字IC后端设计实现OCC(On-chip Clock Controller)电路介绍及时钟树综合案例

数字IC后端设计实现OCC(On-chip Clock Controller)电路介绍及时钟树综合案例

weixin_37584728的博客 4735

Android 开发 Tip 3 -- that was originally added here

转载请注明出处:http://blog.youkuaiyun.com/crazy1235/article/details/51471280窗体句柄泄漏异常信息如下:xxx has leaked window DecorView@ffd62e7[title] that was originally added here 这类错误一般都是在使用AlertDialog , PopupWindow, ProgressD

crazy_jack 7464

ZYNQ 系统的IEEE1588 实现方法

zynq IEEE588/PTP 实现方案(讨论稿)

姚家湾博客 1万+

Activity has leaked window DecorView@992a599[XXXActivity] that was originally add

Activity has leaked window DecorView@992a599[AddressTransferSuccessActivity] that was originally added here

yzpbright的博客 4601

MOS管热阻的测量方法

实验室内如何测试mos管热阻

weixin_43492562的博客 4092

【异常】Coze/扣子 Workflow 调用报 4200 错误深度解析

Coze API 的。

奶爸的编程之路,也就一周冷个三天 301

decorview that was originally added here or java.lang.IllegalArgumentException: View not attached to...

使用Dialog的时候,没少出现下面这两个报错 12-11 17:47:49.776: E/WindowManager(11461): android.view.WindowLeaked: Activity TestActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{4220480...

weixin_30929011的博客 345

IEC104协议学习专栏内容规划

IEC104协议的编程学习

sixtome 1110

安卓笔记android.os.NetworkOnMainThreadException异常

注意:造成这样的错误原因是代码不符合Android规范,如果把上面访问方式改为异步操作就不会出现在4.0上访问出现 android.os.NetworkOnMainThreadException异常  如: new Thread(){ @Override public void run(){ //你要执行的方法 //执行完毕后给handler发送一个空消息 handler.s

u012724095的专栏 318

RT-DETR改进策略【Conv和Transformer】| ICCV-2023 iRMB 倒置残差移动块 轻量化的注意力模块

本文记录的是利用模块优化的目标检测网络模型。的作用在于克服了常见模块无法同时吸收CNN 效率建模局部特征和利用Transformer 动态建模能力学习长距离交互的问题。相比一些复杂结构或多个混合模块的方法,能更好地权衡模型成本和精度。本文将其用于的模型改进和二次创新,更好地突出重要特征,提升模型性能。Rethinking Mobile Block for Efficient Attention-based Models从微观角度看,由和组成。及其改进的实现代码如下: 四、创新模块 4.1 改进点1⭐ 模块

Limiiiing的博客 816

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

安卓异常处理(笔记)

(1)java.lang.IllegalStateException:Observerandroid.widget.AbsListView$AdapterDataSetObserver@b10fb42wasnotregistered. 这个报错在异常信息里是看不到关于程序里有报错的地方的,而这个报错是因为程序不停的setAdapter(); 处理方法是只有当adapter为空时用再次...

qq_34709057的博客 1409

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

android异常笔记

1.Activity ca.ct.activity.OBaccaratActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@42db0500 that was originally added here        ~~~ 出现这种错误的情景是:当我点击返回键,退出一个activi

1万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

1安卓笔记 异常捕捉

在程序崩溃的时候 ,捕捉异常 步骤 首先在 activity的oncreat中调用 Thread.setDefaultUncaughtExceptionHandler(new DefaultExceptionHandler( this.getApplicationContext(),crashInterface)); 实现一个继承UncaughtExceptionHandle...

weixin_30457881的博客 69

h5学习笔记:rem单位在一些安卓机计算异常

1.项目描述 一款App+h5进行混合开发,App通过webview方式对h5进行远程加载。h5采用了vuejs进行开发,适配采用了px2rem插件方式进行批量转换。 2.项目异常现象 混合开发增加了调试的难度,也增加了人员开发的沟通成本。使用了rem单位进行适配在大多数机型表现还算OK。我们通常的做法是设置html 根字体大小,然后通过rem来转换。如果设置根字体是100px=1rem,div宽如果是200px,则值为2rem。但是在现今碎片化严重的安卓机环境中,。这种想当然的想法会被打脸。经过查询了一些

夏天的树人的专栏 901

Android: Unhandled exception java.net.malformedurlexception 异常笔记

Android: Unhandled exception java.net.malformedurlexception 异常笔记

qq_38472574的博客 253

【安卓学习笔记】 JAVA基础-异常

异常 1、什么是异常 定义:中断了正常指令流的事件; 理解:和正常的程序相比,出现了一些意外,这些意外有可能会导致程序出现问题甚至程序的崩溃。如何去处理这些 在面向对象的体系中,异常也属于是一种对象。这种对象在程序出现不正常因素由虚拟机产生的。 1.注意:异常不是在编译后的语法错误,而是在运行的时候产生的。 程序在异常之前是正常执行的,在异常之后程序不会再执行。 2、

冯宇的博客 182

【安卓学习笔记】JAVA基础-异常的处理

除了java虚拟机本身能够产生的异常外,经常还会用到自定义异常。记录下throw和throws的用法。1.throwclass User{ private int age; public void setAge(int age){ if(age &lt; 0)//在使用User类的时候如果有错误的生成一个异常对象并抛出异常对象 { RuntimeException e = n...

冯宇的博客 301

android菜瓜笔记之android.content.ActivityNotFoundException 异常处理

编写一个新的Activity,运行的时候

瞎几把学 4339

Android全局异常处理器笔记

自定义一个application public class MyApplication extends Application { private static Context mContext; @Override public void onCreate() { super.onCreate(); this.mContext = t...

欢迎访问我的博客!我想在这里分享一些有用和有趣的东西。希望我的内容对大家有帮助。 314

【Android笔记#4】Android4.0的menu异常+res新建Directory异常

1.编写“选项菜单”实例时,android4.0版本无法显示menu右上角3个点,其他高级版本可正常显示。实体触摸键却可直接调出。自写一个makeActionOverflowMenuShown()方法解决,实现3点显示: private void makeActionOverflowMenuShown() { try { ViewConfiguration...

Jelly_Bean的博客 367

android开发笔记之网络异常

在开发android网络程序的时候遇到一个bug,非常简单的一个apk,调用了socket与ServerSocket的应用,在打印bug的时候发现是android.os.networkonmainthread,这个错误主要是因为考虑到连接网络时可能造成整个程序的阻塞,解决这个问题的方法很简单,主要有两种方法,一是采用一种strictmode,这种方法我在某个示例程序里看到过,...

weixin_34344677的博客 119
上一篇: 继承自 v7.app.AppCompatActivity;的activity去掉标题栏
下一篇: 30s倒计时
rongbinjava
博客等级 码龄11年 15粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值