首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

阿里、字节:一套高效的iOS面试真题!

开发最核心的知识了,如果下面的问题都解决了,那么对runtime的理解已经很深了。...所使用的的数据结构是什么 ARC的实现原理?...比较核心的开源库,这些库包含了很多高质量的思想,源码学习的时候一定要关注每个框架解决的核心问题是什么,还有它们的优缺点,这样才能算真正理解和吸收 AFN SDWebImage JSPatch、Aspects...怎么面向切面(可以参考Aspects深度解析-iOS面向切面编程)* 哪些bug会导致崩溃,如何防护崩溃* 怎么监控崩溃* app的启动过程(考察LLVM编译过程、静态链接、动态链接、runtime...不使用charles,4G网络如何抓包 数据结构与算法 对于移动开发者来说,一般不会遇到非常难的算法,大多以数据结构为主,笔者列出一些必会的算法,当然有时间了可以去LeetCode上刷刷题 八大排序算法

1K31

iOS符号化浅析

其内部数据是高度压缩的,可以通过 dwarfdump、otool 等命令提取其中的可读信息。通过 MachOView 打开 DWARF 后会发现其外层依旧是 Mach-O 格式。...dSYM iOS 平台中, dSYM 文件是指具有调试信息的目标文件,dSYM 中存储着文件名、方法名、行号等信息,是和可执行文件的 16 进制函数地址一一对应的,通过分析崩溃崩溃文件可以准确知道具体的崩溃信息...而要将系统库的符号化为完整的方法名,也需要 iOS 各系统库的符号文件。 系统库符号的文件不是通用的,需要对应崩溃所在设备的系统版本和 CPU 型号。...在线符号化 在线符号化其实就是上文中提到的符号化最后一种方式,其核心在于使用工具提取地址与符号的对应关系,这需要我们对 DWARF 文件结构有所了解,找到其对应关系所在位置,核心是debug_line...iOS 符号解析重构之路 iOS 符号化:基础与进阶 iOS 崩溃日志在线符号化实践 漫谈 iOS Crash 收集框架[16] iOS Crash 分析:符号化系统库方法[17] 聊聊从 iOS 固件提取系统库符号

1.6K41
您找到你想要的搜索结果了吗?
是的
没有找到

如何帮你的 Mac 腾出更多储存空间?

小伙伴经常会发现苹果电脑的可用空间变得越来越少,就算是想删掉数据腾出一些系统空间,可用的空间也没有变多。那么,如何帮你的 Mac 腾出更多储存空间呢?一起来看看吧!...例如,缓存和临时文件的主要作用是存储中间数据,提高任务执行速度;而日志则是系统和 App 运行时产生的操作记录、崩溃报告等,可以帮助开发者利用这些信息优化和修复软件漏洞。...但请务必注意:仅在你完全了解文件夹作用后,才能考虑是否删除,否则可能造成 App 崩溃乃至系统关键功能受损等严重后果。 然而,这种清理终归有些繁琐,而且很容易漏删或误删文件,耽误宝贵时间。...因职业和使用方式的不同,你可能还需要进一步清理各类数据。...以 iOS 程序员为例,在开发和测试过程中,Xcode 会在 /Users/用户名/Library/Developer/Xcode/iOS DeviceSupport 内存放真机调试记录等信息,而一般的清理工具也会将其默认忽略

1K20

【重磅推荐】2015年移动应用质量大数据报告

首先,让我们从整体上,回顾一下2015年度的应用和应用崩溃情况 12015 移动应用数量持续快速增长 据腾讯大数据显示,我国智能机活跃设备已超过 10 亿台,这些设备通过访问移动 App 或浏览器等方式进行上网...在二大平台的应用市场上,iOS 应用突破 180万,Android 渠道众多,我们采用应用宝的官方数据,目前国内市场上应用达到近 300万。...9Android 4.4 以上应用崩溃率较低 截止到 2016年2月份,4.4 版本仍占据市场的近半壁江山; 从崩溃数据可以看出,各应用对于主流版本 4.4、5.0、5.1 适配程度较高。...但 iOS 7 和 iOS 8 仍然占据一定的市场比例;各系统版本的崩溃率从高到低整体上是 iOS 7 > iOS 9 > iOS 8,在应用开发适配系统版本时,iOS 8 系列版本仍是当前适配最好的,...希望这篇基于腾讯Bugly大数据的移动应用崩溃分析,能给每个开发者一些收获。崩溃不可怕,我们一起来解决它。接入Bugly,崩溃全掌控。

92430

【版本升级】PerfDog新增多维度测试报告对比功能、iOS电量测试功能升级

其他优化更新 【新增】增加测试过程异常退出,数据重新加载功能 【修复】解决Mac机器测试崩溃、卡死无法启动问题 【修复】解决Adb无法识别、无法与其他自动化测试平台兼容问题 【修复】解决部分Android...Android对比概况 iOS对比概况 点击设备后面的“详情”按钮,还可以看到详细的设备信息,包括设备名称、系统版本、处理器架构、核心数、CPU频率、GPU型号、OpenGL版本、内存大小等信息。...机型、版本详情 选中某个测试数据的一个时间区段,就可以立即显示出这个时间区段中各个测试用例的相关详细数据。...iOS设备,让iOS电量测试变得更加简单准确。...其他诸如增加测试过程异常退出,数据重新加载功能,增加密码失效显示功能,解决Mac机器测试崩溃、卡死无法启动问题,解决Adb无法识别、无法与其他自动化测试平台兼容问题,解决部分Android手机无法测试问题等众多内容有待用户亲自更新体验

69130

【重磅推荐】2015年移动应用质量大数据报告

首先,让我们从整体上,回顾一下2015年度的应用和应用崩溃情况 1.2015 移动应用数量持续快速增长 据腾讯大数据显示,我国智能机活跃设备已超过 10 亿台,这些设备通过访问移动 App 或浏览器等方式进行上网...在二大平台的应用市场上,iOS 应用突破 180万,Android 渠道众多,我们采用应用宝的官方数据,目前国内市场上应用达到近 300万。...9.Android 4.4 以上应用崩溃率较低 截止到 2016年2月份,4.4 版本仍占据市场的近半壁江山; 从崩溃数据可以看出,各应用对于主流版本 4.4、5.0、5.1 适配程度较高。 ?...但 iOS 7 和 iOS 8 仍然占据一定的市场比例;各系统版本的崩溃率从高到低整体上是 iOS 7 > iOS 9 > iOS 8,在应用开发适配系统版本时,iOS 8 系列版本仍是当前适配最好的,...希望这篇基于腾讯Bugly大数据的移动应用崩溃分析,能给每个开发者一些收获。崩溃不可怕,我们一起来解决它。接入Bugly,崩溃全掌控。

1.6K60

2016 移动应用质量大数据报告

下面我们将为您带来2016年度 Android & iOS 移动应用质量大数据报告,让您清晰了解行业动态,精准定位自身产品位置。 ? ? ?...• 游戏崩溃率远高于应用崩溃率 无论是Android还是iOS,游戏的崩溃率都远高于应用,在iOS中的差异尤为明显。 ? 接下来让我们从Android开始,从多个维度进行应用质量分析。 ?...而联想和酷派机型的崩溃率超过3%,根据数据分析其崩溃原因,我们发现,Java类型的崩溃中除空指针异常外,出现最多的是ActivityNotFoundException和ClassNotFoundException...• iOS应用不同行业间崩溃率差距较大 iOS应用行业整体崩溃率在1.6%~4.6%之间,崩溃较低的行业如导航、商品指南类应用保持在2%以下,体育、社交、图书行业崩溃率在4%以上。 ?...• 运行中的崩溃问题大幅缩减 相较2015年数据,运行中的崩溃(运行60s以上闪退)问题占比,从78%下降至65%,缩减了13个百分点。 ?

2.3K50

【版本升级】PerfDog新增多维度测试报告对比功能、iOS电量测试功能升级

【优化】支持iOS所有手机。...其他优化更新 【新增】增加测试过程异常退出,数据重新加载功能 【修复】解决Mac机器测试崩溃、卡死无法启动问题 【修复】解决Adb无法识别、无法与其他自动化测试平台兼容问题 【修复】解决部分Android...iOS对比概况 点击设备后面的“详情”按钮,还可以看到详细的设备信息,包括设备名称、系统版本、处理器架构、核心数、CPU频率、GPU型号、OpenGL版本、内存大小等信息。 ?...机型、版本详情 选中某个测试数据的一个时间区段,就可以立即显示出这个时间区段中各个测试用例的相关详细数据。...其他诸如增加测试过程异常退出,数据重新加载功能,增加密码失效显示功能,解决Mac机器测试崩溃、卡死无法启动问题,解决Adb无法识别、无法与其他自动化测试平台兼容问题,解决部分Android手机无法测试问题等众多内容有待用户亲自更新体验

68920

这些年iOS AppStore 套壳开发上架从棋牌类到彩票类在到如今的金融原油期货类App过程

当你的数据充足 在App分析中可以点击App的时候请查看下图,如果还不能用请继续往下看 首先-在AppStore的数据不充足的情况下App分析中列表中的App数据是无法点击的,但是这个情况你又需要添加额外的渠道下载链接...并且App分析的数据有延迟,比如今天苹果发布公告:2018/06/24的数据会延迟发布。我们将在其可用时尽快发布。...请仅在您真的需要加快审核时才提出申请,以便其他开发者的加急请求不受影响。如果我们发现您滥用此系统,从此以后我们可能都会拒绝您的申请。...---- iOS开发马甲包中友盟推送通知-当App没有启动时点击推送会在启动后崩溃-而在后台运行时不会出现崩溃问题 原本项目使用的是外包公司做的-而且到我们这边以及第三手了,想来是不会出现APP没有启动的情况下点击推送会崩溃的问题...看了下确实是 逻辑判断的问题, 我注释了,重新打AD Hoc包,友盟推送之后发现好了,不崩溃了。。

3.3K31

Swift入门:怎样安装Xcode和创建Playground

下载时,我可以向您解释一些绝对的基础知识: iOS是在所有iPhone和iPad(最新的iPad运行iPad OS,本质还是iOS)上运行的操作系统的名称。...它包括用户界面的UIKit,但大多数人会说它还包括制作2D游戏的SpriteKit、制作3D游戏的SceneKit、地图的MapKit、绘图的核心图形、制作动画的核心动画等等。...严格地说,它由用于用户界面的AppKit、基本功能的基础和用于对象图的核心数据组成,但与Cocoa Touch一样,它通常用于表示“所有macOS开发” NeXTSTEP是一个由史蒂夫•乔布斯创建的名为...它被苹果收购,此时乔布斯重新控制了苹果,并将NeXTSTEP技术放在苹果开发平台的核心位置。...Crashes(崩溃)是指你的代码出现灾难性错误,你的应用无法恢复。如果用户正在运行你的应用程序,它将消失,他们将回到主屏幕上。如果你在Xcode中运行,你会看到一个崩溃报告。

6.1K10

听云SDK发布《中国移动应用性能管理白皮书》:高德路径规划API接口响应耗时最短

报告显示:   从整体来看,iOS应用崩溃率远高于Android,基本是Android应用平均崩溃率的5倍。   iOS应用在2016年6月-8月崩溃现象尤其突出,或与新版本发布有关。   ...1 、 Android 和 iOS 系统下,各行业崩溃率表现不同 ?   Android系统中,崩溃率最高的为航空行业,崩溃率为2.05%。   ...iOS系统中,O2O、游戏行业崩溃率均在4%以上,其中游戏行业崩溃率高达5.83%。   二、网络性能   1 、各移动网络运营商性能之间的对比 ?   ...我们可以看到:   报告中通过对各家移动运营商数据对比分析,移动应用性能方面整体呈现出4G优于3G,3G优于2G的情况。   ...另外,报告中还提到了在iOS & Android两大平台下,崩溃率最高的TOP10应用系统版本、主流品牌手机排名前20的机型应用崩溃情况、不同性能指标下全国各地区分布情况、应用网络错误率及原因分布等重要性能数据

1.6K50

iOS14 Beta4崩溃修改

iOS 14 beta4崩溃修改 前言 升级iOS 14Beta4后,有用户反馈使用我们APP时会崩溃,有登录的、查看详情的,都会出现崩溃。...我们查看Bugly数据也发现崩溃率上升了0.02%,直接超出了指定的崩溃指标。虽然是由于升级beta版系统导致的,但还是要排查出具体原因,然后尽快适配。...排查 由于崩溃是必现的,所以排查起来很容易,找一台升级了iOS14 beta4的手机,然后复现步骤,看具体崩溃的地方,即可 我们APP是由于使用了SexyJson这个库,其中SexyJsonProtocol...于是再次修改 如图所示,第一次修改: [1597027634294.jpg] 第二次修改: [1597028081543.jpg] 最后 所以我们项目里在iOS14 beta4中的崩溃是由于SexyJson...库中的强制解包导致的,但是真正的原因是iOS14 beta4中AnyRandomAccessCollection()此方法不能正常工作了。

69851

如何在iPhone设备中查看崩溃日志

引言 当你的iPhone设备崩溃、冻结或自动重启时,不要担心。崩溃可能是由任何硬件驱动或iPhone设备错误造成的。在这种情况下,崩溃日志可以提供有用的信息,帮助你找到崩溃的原因。...内存故障:如果你的系统中的RAM出现故障,iPhone设备将难以从内存中检索数据。每当iPhone设备试图从内存中恢复数据时,RAM故障可能导致系统崩溃或冻结。...使用克魔助手查看iPhone设备中的崩溃日志 克魔助手是一款为苹果手机iOS应用开发设计的辅助工具,提供了app实时日志、奔溃日志分析等功能,有助于高效地开发和调试iOS应用程序。...下面是操作步骤: 奔溃日志分析 克魔助手还提供了奔溃日志分析查看模块,可以方便地导出和查看iOS设备上的奔溃日志,并对其进行符号化、格式化和分析。...PS:数据连接时,先将 iPhone 通过数据线连接上电脑,iOS 手机上一定要信任这次连接,(开启WiFi调试时,无需数据线) 开 ​ 总结 本文介绍了如何在iPhone设备中查看崩溃日志。

26910

iOS 性能优化实践:头条抖音如何实现 OOM 崩溃率下降50%+

iOS OOM 崩溃在生产环境中的归因一直是困扰业界已久的疑难问题,字节跳动旗下的头条、抖音等产品也面临同样的问题。...OOM 崩溃背景介绍 OOM OOM 其实是Out Of Memory的简称,指的是在 iOS 设备上当前应用因为内存占用过高而被操作系统强制终止,在用户侧的感知就是 App 一瞬间的闪退,与普通的 Crash...头条,抖音等多个产品线上数据均显示FOOM量级比普通崩溃还要多,因为过去缺乏有效的监控和治理手段导致问题被长期忽视。...自研线上 Memory Graph,OOM 崩溃率下降 50%+ OOM 生产环境归因 目前在 iOS 端排查内存问题的工具主要包括 Xcode 提供的 Memory Graph 和 Instruments...CoreFoundation 类型获取 引用关系的构建 整个内存快照的核心在于重新构建内存节点之间的引用关系。

4K41

APM性能分享观看有感

这是我参与「掘金日新计划 · 6 月更文挑战」的第10天,点击查看活动详情 应用性能监控是什么 应用 ios,app,pc 性能 performance用户体验,注重快:流畅,稳:崩溃,省:资源占用省...监控那些性能 一,快: 1.启动监控:冷启动,热启动 2.卡顿监控:主线程消息执行耗时, 3.页面监控:监控页面打开耗时,页面打开NLS帧率 4.网络监控:网络响应 二,稳: 1.Java崩溃...2.Native崩溃 3.ANR监控 4.OOM监控 省: 1.内存监控:java内存,虚拟内存,显存 2.CPU监控:APP使用率和各个线程使用率 3.电量监控:温度监控,异常定位,CPU...异常监控 4.磁盘监控: > 一切为了用户体验 如何进行监控 监控核心是围绕用户体验建立指标和进行异常归因。...确认优化指标优先级 两个因素:影响用户比例和用户感知程度 应用性能监控和优化流程 理论分析 从底层原理出发更加全局的视角来思考优化目标和策略 现状分析 使用线上监控工具,确认线上指标现状,根据归因数据

27140

【总结】ios端被忽略的文件容错测试

一般在安卓系统中,以上内容都会在测试过程中考虑到,由于苹果手机系统相对封闭,与安卓相比来说,病毒少,底层数据被恶意删除或修改的几率少,所以从自我意识上对于ios端的文件容错性测试关注点就比较弱,最终导致一次严重上线问题...点击表情键盘的“颜文字icon”后崩溃 2....点击App中的“表情tab”崩溃 问题原因 本次版本中由于新增功能,所以修改了本地config.plist文件的格式,在修改config.plist格式的同时又用到了newInfo.plist文件,但是由于历史原因部分用户...newInfo.plist文件丢失,客户端未进行相关容错保护,所以出现以上问题 思考总结 虽然ios端有沙盒机制,底层数据一般不会被恶意删除或修改,但是依然存在文件丢失问题,所以iOS端也需要针对本地文件进行容错...通过这张图只能从表层上理解sandbox是一种安全体系,应用程序的所有操作都要通过这个体系来执行,其中核心内容是:sandbox对应用程序执行各种操作的权限限制 ?

1.2K50

缓冲区溢出漏洞可导致内核崩溃,苹果多款操作系统均受影响

该漏洞使得攻击者只要接入同一Wi-Fi网络,即可向其他毫不知情的用户发送恶意数据包来触发任何Mac或iOS设备的崩溃和重启。由于该漏洞存在于系统网络核心代码,因此任何反病毒软件均无法防御。...运行以下操作系统的设备易受攻击: Apple iOS 11及更早版本:所有设备(升级到iOS 12的部分设备) Apple macOS High Sierra(受影响的最高版本为10.13.6):所有设备...举个例子: 用户在咖啡馆使用免费Wi-Fi时,攻击者可以加入相同的无线网络并向用户的设备发送恶意数据包就可以让设备崩溃和重启。(攻击者只要使用NMAP工具就能很方便地获得设备IP地址。)...由于该漏洞的成因来源于系统的核心代码,反病毒软件也无法防御。 Kevin在运行McAfee ® Endpoint Security for Mac的Mac上成功测试了该漏洞。...iOS设备不支持隐藏模式。 不接入公共无线网络。触发该漏洞的唯一必要条件是处于同一Wi-Fi网络,该漏洞不支持通过互联网发送恶意数据包而触发,Kevin测试过了。

1K20

App测试常见功能点

App端与web端比较 系统架构 App端: C/S结构,一定有客户端,app 修改了服务端,则客户端用户所有核心版本都需要进行回归测试一遍。...web端: B/S架构,基于浏览器,web测试只用更新服务器端,客户端就会同步更新 兼容性 web端: 浏览器(Firefox、chrome、IE等),操作系统(Windows7、mac-ios、Linux...等) App端:操作系统(android, ios),设备(等等),分辨率(等等) 操作行为 web端: 单击、双击、拖拽 App端: 单击、双击、拖拽,还有放大、缩小、滑动、其他复杂手势操作 其他 网络种类...多个版本未升级,跨版本升级后能否正常使用 在不删除客户端的情况下,能否正常更新 App前后台切换测试 App切换到后台,再回到App,检查是否停留在上次操作界面 手机锁屏、解锁后进入App注意是否会崩溃...关掉App进程后,再开启App,App能否正常启动 对于有数据交换的页面,每个页面都必须要进行前后台切换、锁屏的测试,这种页面容易出现崩溃 消息推送 ios的APNs推送,是否正常 未锁屏时,后台运行

69831

编译与链接过程的思考

静态连接就是把静态连接库(.a文件)中的文件链接到可执行文件中; .a文件是多个.o文件的组合; .o文件是对象文件,里面是机器指令; 链接就是多个.o文件打包成可执行文件; 2、动态链接 动态链接就是仅在可执行文件中加入相关描述文件...程序的编译是以文件为单位进行的,因此每个 c/cpp 文件也叫作一个编译单元(translation unit), 源文件先是被编译成一个个目标文件, 再由链接器把这些目标文件组合成一个可执行文件或库,链接的过程,其核心工作是解决模块间各种符号...iOS相关 下图是我们Xcode工程的设置,我们来一一解析。...当把Objective-C代码编译成汇编、再转译成二进制机器码后,会生成一个dSYM文件包(内含符号表,负责翻译崩溃报告成可读代码)。....Xcode项目每次编译后,都会生成一个新的.dSYM文件,故而真机上的崩溃日志需要检查对应的符号表。

1.2K90
领券