这个项目做的差不多了,写写放下很久的blog。主要是记载项目中的一些用到的东西,怕以后要用到。今天是往项目当中添加Crash机制。网络上有很多的现成的,但是我决定还是自己写写。让自己回顾下。我也是参考了很多文章。现在放在项目当中的也还有要优化。其实他的原理是:1,java.lang.Thread.UncaughtExceptionHandler;这个类处理那些我们在程序当中没有捕获的异常,重写此类            
                
         
            
            
            
            erlang宕机,一般来说都是因为内存分配失败。此时可以通过erl_crashdump_analyzer.sh分析dmp文件,如下: https://github.com/ferd/recon/blob/master/script/erl_crashdump_analyzer.sh [root@lo            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-19 17:00:29
                            
                                713阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            show platform crashdump            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-11-21 17:50:15
                            
                                107阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            这本书给了我一个很好的答案(有三方实现,但是我觉得掌握原理也是开发者进阶的一个必要阶段)。Thread类中的setDefaultUncaughtExceptionHandler方法完美解决了这个问题:public static void setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) {
                    
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-04 09:16:29
                            
                                42阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Linux系统作为一款开源的操作系统,一直以来都备受推崇。然而,就像其他操作系统一样,Linux系统也可能会出现崩溃的情况,这时就需要使用红帽系统中的Linux crashdump工具来帮助诊断和解决问题。
所谓的Linux crashdump,就是在Linux系统遇到崩溃或者死机等严重问题时生成的日志文件。这些日志文件包含了系统在发生问题时的信息,可以帮助开发人员和系统管理员快速找到问题的根源            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-05-07 11:27:05
                            
                                65阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             在物理机中,操作系统崩溃后,一般会有Crashdump文件保存,用于分析导致系统崩溃的原因,而在XenServer中,也提供了这样一种机制用于保存Crashdump文件,并且相对于物理机,针对虚机的保护增加了Crashdump(宕机)后的保护操作,用于尽快的恢复业务的运行,保持业务连续性,比如,在VM崩溃以后,自动重启,或者为了稳定,暂时性的关闭虚机,再或者为了保存崩溃的上下文,保持崩            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2011-11-22 16:39:55
                            
                                747阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在物理机中,操作系统崩溃后,一般会有Crashdump文件保存,用于分析导致系统崩溃的原因,而在XenServer中,也提供了这样一种机制用于保存Crashdump文件,并且相对于物理机,针对虚机的保护增加了Crashdump(宕机)后的保护操作,用于尽快的恢复业务的运行,保持业务连续性,比如,在VM崩溃以后,自动重启,或者为了稳定,暂时性的关闭虚机,再或者为了保存崩溃的上下文,保持崩溃状态等等操            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2011-06-27 11:06:00
                            
                                4152阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言前两天,我已经写了一篇文章对 ANR 的产生原理进行了简单的探讨,链接如下:【Android】ANR 原理解析感兴趣的大佬可以前去观摩观摩,今天这篇文章,将写写如何进行 ANR 日志的分析。导致 ANR 的原因应用层导致的ANR(耗时操作)主线程耗时长主线程方法执行了死循环主线程等待子线程释放锁时间过长应用内存紧张,当一个应用长期处于内存紧张状态,会导致频繁内存交换,进而导致应用的一些操作超时            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-24 22:32:55
                            
                                800阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                  这是一篇讲述应用耗电的文章,围绕 Android 电量采集机制及第二代 Battery Historian 分析工具讲述。文从数据采集、导出、环境搭建、解读报告的角度出发,从细节讲解整个流程。和大谈概念的文章不同,这里将进行实际操作及分析。写作动机来源于最近的工作需求,但分析过程中发现网上资料较为匮乏。在此执笔写作,以便日后回顾,亦作为分享的机会。0x01            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-26 20:44:27
                            
                                193阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             1. ANR是什么ANR全称是Applicatipon No Response,Android设计ANR的用意,是系统通过与之交互的组件以及用户交互进行超时监控,用来判断应用进程是否存在卡死或响应过慢的问题,通俗来说就是很多系统中看门狗(watchdog)的设计思想。2. 导致ANR的原因耗时操作导致ANR,并不一定是app的问题,实际上,有很大的概率是系统原因导致的ANR。下面简单分            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-14 13:35:13
                            
                                72阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            本文针对anr问题分析的一般套路与技巧进行了总结与归纳。 以下所有内容均为本人的个人理解以及经验积累,偏向于实战若有任何问题,请给出建议及帮忙进行纠错。 通过本文的阅读,你将有以下收获: 1:了解什么是anr 2:了解anr的简单分析套路 3:了解攻克较难无响应问题的部分手段一、安卓无响应问题概述ANR,应用程序无响应即Application not Responding,以下简称“无响应”或“a            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-01 21:00:50
                            
                                233阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Dalvik虚拟机支持垃圾收集,但是这不意味着你可以不用关心内存管理。你应该格外注意移动设备的内存使用,在上面内存空间是受到限制的。在这篇 文章里面,我们来看看Android SDK里面的一些内存剖析工具(profiling tools)是如何帮助我们修整应用程序的内存使用。 一些内存使用问题是很明显的,例如,如果在每次用户触摸屏幕的时候应用程序有内存泄露,将会有可能触发OutOfMemoryEr            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-26 23:01:56
                            
                                42阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            作为性能优化专栏的第五篇,我们就来说一说 App 卡顿优化的各种解决方案。 一、AndroidPerformanceMonitor非侵入式的性能监控组件,通知形式弹出卡顿信息。
github 地址:AndroidPerformanceMonitor
1)添加依赖implementation 'com.github.markzhai:blockcanary-android:1.5.0'2)Block            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-04 13:35:00
                            
                                230阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1. 关于Android dex文件dex文件作为Android APK的组成部分,其主要是Android的Java代码经过编译生成class文件,再经过dx命令生成的。这里面包括了APK的源码,反编译时最主要就是对这个文件进行反编译。有人会问,知道了dex的文件结构有什么用呢?在Android安全方面来说,dex是安全的重头戏,如果能够了解了dex文件的格式,那么对于dex文件的加固原理也就有简            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-03 13:07:39
                            
                                50阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            目录Activity 与 Window 相关概念WindowManagerService Activity 相关变量 WMS 启动流程分析  窗口类型1. 应用窗口2. 子窗口3. 系统窗口从 Activity 启动角度看 WMS 窗口的显示次序 Activity 启动窗口WindowManagerService(WMS) 管理窗口的创建            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-09 14:19:59
                            
                                146阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言  ANR是Android中一个独有的概念,它的全称是Application Not Responding(应用程序无响应)。   相信从事Android开发的同学,或多或少都遇到过,对于高质量的代码,ANR在开发者自测过程中可能不会经常遇到,但一旦测试人员进行Monkey测试,ANR出现的概率就比较高了,如何快速分析定位并解决,是开发者的必修课。&nb            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-26 13:32:25
                            
                                279阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            摘要:近年来,智能手机和基于Android操作系统的其他移动设备从简单的通讯工具变成信息处理和服务的综合平台。随着高科技犯罪案件和民事纠纷增加,犯罪手段日益数字化和多样性,涉及电子证据的数据信息诉求也逐渐增多。电子取证有数据获取与数据恢复、数据分析、输出以及如何快速准确地显示结果三个阶段。数据分析作为电子取证的关键环节,面对大量电子文档,如何从中提取意义重大的有用信息是一个关注点。本文通过研究信息            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-26 19:58:01
                            
                                40阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            最新需要给软件做数据库读写方面的优化,之前无论读写,都是用一个 SQLiteOpenHelper.getWriteableDataBase() 来操作数据库,现在需要多线程并发读写,项目用的是2.2的SDK。 android 的数据库系统用的是sqlite ,sqlite的每一个数据库其实都是一个.db文件,它的同步锁也就精确到数据库级了,不能跟别的数据库有表锁,行锁。所以对写实在有要求            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-01 12:48:55
                            
                                58阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言上一篇给大家介绍了Android Crash中的Java Crash分析,我们可以知道Java Crash一般会弹出提示框告诉我们程序崩溃了,通常使用Crash工具都能够捕获到;本篇博客来谈谈如何针对Native Crash进行分析,它相对与Java层面的Crash有什么特点?如何判断程序Crash是因为Native层导致的?我们怎么去分析它?下面我们一个一个解答这些问题。Native Cra            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-09 19:47:48
                            
                                64阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Systrace 是Android平台提供的一款工具,用于记录短期内的设备活动。该工具会生成一份报告,其中汇总了Android内核中的数据,例如CPU调度程序、磁盘活动和应用线程。这份报告可帮助我们了解如何以最佳方式改善应用或游戏的性能。Systrace 工具用于显示整个设备在做些什么,不过也可用于识别应用中的卡顿。Systrace 的系统开销非常小,因此你可以在插桩测试期间体验实际卡顿情况。Sy            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-28 09:02:13
                            
                                178阅读
                            
                                                                             
                 
                
                                
                    