这篇文章列出了9种常见的crash,原文写得很好,我这里对照我自己遇到过的情况再整理记录下。(一)KVOKVO的一种常用场景是view对象监听view model对象实现实时刷新UI,例如有一个table view,每个cell都监听对应的cell model,这样数据源数组中只有一个对象的属性发生改变时就不需要reload整个列表。使用KVO有一个常见的crash就是没有移除监听,我们需要在de
       前两天接到个面试,面试官问到上线的app怎么避免闪退,首先想到的就是在编码的时候进行各种容错,但貌似并不是面试官想要的答案,所以表现的很糟糕。今天有时间就来整理一下,希望有所帮助。实现效果如图: 效果实现: 用法:1.将截图的中CatchedHelper文件夹拖到你的项目工程中。 2.在AppDelegate.
随着app不断的迭代,代码会变得越来越多,经过N个人的持续N年的代码,维护起来越来越难,也很难保证测试case覆盖所有场景。举一个例子:如果原来服务器返回的是数组,而现在返回字符串,如果代码上没有添加判断,很可能就会造成“unrecognized selector sent to instance”,谁也不知道当初这么写的逻辑,没人敢动老代码。几万甚至数十万行的代码,这样的风险不可避免。我的希望就
iOS app - 使用Cycript修改微信app1.安装Cycript官网地址:http://www.cycript.org/debs/?
原创 2023-04-09 20:38:35
92阅读
苹果电脑从 macOS 10.11 开始引入了系统完整性保护机制SIP(System Integrity Protection),目的是帮助普通用户避免恶意 app 通过用户授权的方式获得所有系统权限。通过 System Integrity Protection,苹果实现了对第三方软件的限制,有一些操作永远不被允许,恶意软件无法通过用户授权的方式从而获得所有系统权限了。但同时也影响到了一些我们平常
转载 9月前
52阅读
文章目录前言I 、Powerful private methods1.1 定位`view`1.2 定位 `按钮地址`II、 快速定位按钮对应的`allTargets `、`allControlEvents `、 `actionsForTarget
原创 2021-09-07 13:36:24
10000+阅读
本文首发于我的个人博客:『不羁阁』 文章链接:传送门 本文更新时间:2019年
原创 2019-09-14 10:11:52
171阅读
本文首发于我的个人博客:『不羁阁』 文章链接:传送门 本文更新时间:2019年08月29日12:37:11本文是 『Crash 防护系统』系列 第二篇。通过本文,您将了解到:KVO Crash 的主要原因 KVO 防止 Crash 的常见方案 我的 KVO 防护实现 测试 KVO 防护效果文中示例代码在: bujige / YSC-Avoid-C...
原创 2019-08-29 17:20:47
197阅读
其实Mac系统相对Windows来说更加安全,主要原因是针对Mac系统的病毒和流氓软件并不多,而且Mac系统的安全机制也更加完善,不过为了更加安全的使用Mac,使用以下8款Mac 杀毒安全、安全防护和流氓防护工具软件,会让你的mac清理优化,轻装上阵,更加安全,使用更便捷。这8款Mac 杀毒安全和流氓防护等工具软件,个个好用,值得收藏! 「如果你觉得有更好的软件,可以回复留言,大家共勉。」Avas
# iOS中的野指针防护iOS开发中,野指针(Dangling Pointer)是一种常见的错误,它发生在指针指向的内存已经被释放或未被分配时。使用野指针可能导致不可预测的行为和崩溃,严重影响应用的稳定性。为了防护野指针问题,iOS引入了一些技术和实践,下面我们详细探讨这些方法,并通过代码示例演示如何有效防护。 ## 野指针的定义 \"野指针\"是指一个指针指向了一个已经释放或未分配的内
原创 20天前
10阅读
     线上APP的崩溃率一直是衡量APP用户体验的重要条件之一,所以,我们很有必要做一些安全防护,让APP尽可能少的产生Crash,提高用户体验。在以前的项目中零零散散做过一些防护,这次专门为平台封装了一个Pod库,供各个业务线直接引用,降低线上APP崩溃率,并将错误信息上传到服务器进行分析。     其实,在开发过程中我们通过设置X
常见web应用防护软件1、网站安全狗网站安全狗是厦门服云信息开发的免费网站安全软件,这款软件可以针对web进行扫描、杀毒、检测代码漏洞等工作,帮助运维人员提升web网站的安全性,另外还能对网站进行流量保护,防止网站遭受cc攻击,只要网站不是遭受大流量的cc攻击都能自动防护。另外就是能够对网站进行24小时的监控,只要网站遭受入侵攻击或者有风险威胁,都会自动通知用户,让用户能够尽早进行应对工作。网站安
转载 8月前
120阅读
获取崩溃信息 在iOS中获取崩溃信息的方式有很多,比较常见的是使用友盟、百度等第三方分析工具,或者自己收集崩溃信息并上传公司服务器。下面列举一些我们常用的崩溃分析方式: 使用友盟、百度等第三方崩溃统计工具。 自己实现应用内崩溃收集,并上传服务器。 Xcode-Devices中直接查看某个设备的崩溃信息。 使用苹果提供的Crash崩溃收集服务。 收集崩溃信息 苹果给我们提供了异常处理的类,NS
转载 2023-08-03 15:43:40
87阅读
po: 学习了一个例子模板(qsbk),里面有很多涉及Dictionary的东西大致学习了下,Dictionary分2中,不可编辑的NSDictionary和 可编辑的NSMutableDictionary.字典使用Key-Value的形式储存数据。字典中的对象储存没有顺序,使用key来表示每个对象。cocoa框架中的字典:NSDictionary和NSMutableDictionaryNSMut
在应用开发过程中,我们不仅仅需要完成正常的业务逻辑,考虑应用性能、代码健壮相关的问题,我们有时还需要考虑到应用安全的问题。那么应用安全的问题涉及到很多方面。比如防止静态分析的,代码混淆、逻辑混淆;防止重签名的,应用ID检测、甚至是代码的HASH检测等等。那么这篇文章我想聊聊关于代码的注入检测,因为发现随着iOS系统的更新,我们防护的手段发生了一些变化。代码注入的方式代码注入的方式大致分为两种 越狱
转载 2019-05-29 16:42:00
71阅读
EXC_BAD_ACCESS 在访问一个已经释放的对象或向它发送消息时,EXC_BAD_ACCESS就会出现。造成EXC_BAD_ACCESS最常见的原因是,在初始化方法中初始化变量时用错了所有权修饰符,这会导致对象被释放。举个例子,在 viewDidLoad 方法中 UITableViewController 创建了一个包含元素的 NSMutableArray,却将该数组的所有权修
电脑经常受到外来恶意软件的袭击?害怕别人侵入你的电脑?小编今天为大家带来了一款Mac病毒安全防护软件—Symantec Endpoint Protection。Symantec Endpoint Protection Mac版是一款集成反病毒、反间谍以及基于主机和网络***的防护方案及其应用,能够帮助用户通过文件的使用时间、访问频率和来源以及其他安全标准,识别新的和目标性极强的威胁。功能介绍自动防
野指针:指向不确定地址的指针变量。(即没有初始化) (随机指向一块内存的指针)使用野指针易因内存泄露出现段错误。因为它随机指向的地址可能被分配了内存,不一定每次都产生段错误. 而造成内存泄露的原因有两个:1.访问了没有权限的内存(平时我们正确使用指针的时候,系统应经将相应的内存分配给用户,但是如果指向没有分配的内存,系统会判定我们没有权限)2.访问了已经释放了的内存。 如何解
引言         我们在工作中,经常会遇到野指针引起的问题。终归到底,还是编码不规范导致的。本文就此话题进行展开讨论。 指向不确定地址的指针变量。(即没有初始化)使用野指针易因内存泄露出现段错误。而造成内存泄露的原因有两个: 访问了没有权限的内存(平时我们正确使用指针的时候,系统应经将相应的内存分配给用户,但是如果指向没有分配的内
崩溃防护 unrecognized selector crash 当消息定义了, 但是没有实现, 也就是SEL没有对应的imp的时候, 消息发送就会报错. 消息流程 需要了解消息转发流程, 大致说一下:• (BOOL)resolveInstanceMethod:(SEL)sel 可以做消息的添加操作 • (id)forwardingTargetForSelector:(SEL)aSelect
  • 1
  • 2
  • 3
  • 4
  • 5