如何解决app闪退问题
1个回答
展开全部
在应用app的时候,我们常常会遇到app闪退各类的问题。
那么怎么解决和分析,以及处理这些问题,我在这里列举几个常见的app闪退的问题,并希望大家可以通过这几类分析,尽量避免app闪退这样的大问题。
第一点,网络数据的请求和保护,在app进行网络切换的时候,如果没有做好网络保护,是会出现app闪退问题的,所以,在网络请求类中,设置好网络的断网保护,就可以解决这类问题了
第二点,主线程的死锁
第三点,数据安全保护,在数据和网络服务器之间进行交互的时候,服务器返回的空类型有多种多样类型,可以为null,也可以为空类型加nukl,可以有空格等,所以,在做好空值处理的时候,需要考虑多种情况,如果空值判断不好,也是会出现闪退问题的,再者就是最好在数据处理的时候,添加空值判断
第四点,数据的返回,做安全判断,在服务器对接的时候,如果数据处理没有做好,返回回调的数据安全判断,也是会出现闪退问题
第五点,野指针或者内存泄露,这个就需要启用Zombie Object进行悬挂指针的检测。
或者 应用Product -> Analysis进行内存泄露的初步检测。
也 可以在xcode的build setting中打开implicit retain of ‘self’ within blocks,xcode编译器会给出警告,逐个排查警告。
抑或 应用Leak Instrument进行内存泄露查找。
在以上方法不奏效的情况下,通过查看dealloc是否调用查看某个class是否泄露的问题
那么怎么解决和分析,以及处理这些问题,我在这里列举几个常见的app闪退的问题,并希望大家可以通过这几类分析,尽量避免app闪退这样的大问题。
第一点,网络数据的请求和保护,在app进行网络切换的时候,如果没有做好网络保护,是会出现app闪退问题的,所以,在网络请求类中,设置好网络的断网保护,就可以解决这类问题了
第二点,主线程的死锁
第三点,数据安全保护,在数据和网络服务器之间进行交互的时候,服务器返回的空类型有多种多样类型,可以为null,也可以为空类型加nukl,可以有空格等,所以,在做好空值处理的时候,需要考虑多种情况,如果空值判断不好,也是会出现闪退问题的,再者就是最好在数据处理的时候,添加空值判断
第四点,数据的返回,做安全判断,在服务器对接的时候,如果数据处理没有做好,返回回调的数据安全判断,也是会出现闪退问题
第五点,野指针或者内存泄露,这个就需要启用Zombie Object进行悬挂指针的检测。
或者 应用Product -> Analysis进行内存泄露的初步检测。
也 可以在xcode的build setting中打开implicit retain of ‘self’ within blocks,xcode编译器会给出警告,逐个排查警告。
抑或 应用Leak Instrument进行内存泄露查找。
在以上方法不奏效的情况下,通过查看dealloc是否调用查看某个class是否泄露的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询