OC-底层原理09—消息转发流程

OC-底层原理09—消息转发流程
铺垫 通过前面分析lookUpImpOrForward,既然是寻找或者转发,那在没寻找到的情况下,它是怎么转发的呢?入口又是在哪? 通过instrumentObjcMessageSends分析方法调用顺序 换一个思路,既然动态决议后,如果没有对Imp进行操作,就会崩溃,那可以通过该方法检测奔溃时方法的调用情况。lookUpImpOrForward -> log_and_fill_cache -> logMessageSend,objcMsgLogEnabled =YES是进入这个流程的关键...

HLS及M3U8介绍

HLS及M3U8介绍
背景 MP4是我们常见的视频格式,往往我们在播放服务器视频时直接就是请求的MP4视频源。但其实这样并不好,MP4头文件[ftyp+moov]较大,初始化的播放需要下载完整的头文件并进行解析,之后再下载一定长度的可播视频片段才能进行播放。另外随着视频尺寸的增大头文件也会不断变大,这个初始播放时间也会更长。针对这种情况需要一种能加快视频初始解析的方法,HLS就是苹果提出的用于解决这种问题的方案...

探秘 App Clips

探秘 App Clips
◆ ◆  ◆ 简介 在iOS14中苹果推出了很多新特性,其中就包含App Clips。App Clips类似微信的小程序,不需要显式的去App Store里下载,苹果会在对应的时机进行下载。App Clips可以在不打开主App的情况下,单独进行使用,交互操作和主App无异,例如登录、列表视图、支付等。 为了保证加载速度,苹果对App Clips的安装包大小有限制,从产品设计的角度,就要聚焦核心功能,这也是苹果所...

RxSwift 封装 CoreBluetooth(一) 配置

RxSwift 封装 CoreBluetooth(一) 配置
对设备的操作不外乎两种情况 1: 扫描设备 2: 连接设备(连接过程需要扫描操作) 定义配置类,配置用户要连接的设备的名称(可选),或者要扫描设备前缀(必定知道设备的前缀以及服务和特征,这是设备出厂时确定的信息), 以及连接和扫描时都有必要知道设备提供的服务。 应用层只需要配置这些信息即可。 import Foundation import CoreBluetooth class BleDeviceConfig { var connec...

RxSwift 封装 CoreBluetooth(二) 扫描

RxSwift 封装 CoreBluetooth(二) 扫描
首先实现扫描功能, 1: 定义扫描接口,定义接口主要是降低耦合(实现该接口可以很轻松的重构扫描模块) 1:ScanBuilder 扫描构建器,描述创建扫描类需要的参数,以及返回对应的扫描器实例。 2:只有一个函数 scan ,返回值为 Observable protocol BluetoothScanable { var scanInfo: (scanPrefix: [String], services: [CBUUID]) { get } var centralManager : CBCentralManager { ...

逆向iOS破解TikTok锁区

逆向iOS破解TikTok锁区
开源一个国内正常使用TikTok的插件。 无需切换外国电话卡,无需拔卡 等乱七八糟操作。此插件需要一些iOS逆向基础的人使用。(或者手机已经越狱了,如果想在未越狱手机上安装的话,请联系我,我可以告诉如何安装) github开源地址: https://github.com/378804441/DWTikTokHook 简书地址:  https://www.jianshu.com/p/b3665b1c238e 目前这个版本插件切换区域后需要重启一下 app,没有做...

iOS实现HTTP认证之摘要认证-Digest

iOS实现HTTP认证之摘要认证-Digest
什么是Digest? 摘要访问认证是一种协议规定的Web服务器用来同网页浏览器进行认证信息协商的方法。它在密码发出前,先对其应用哈希函数,这相对于HTTP基本认证发送明文而言,更安全。 从技术上讲,摘要认证是使用随机数来阻止进行密码分析的MD5加密哈希函数应用. 1. 基本流程 客户端发起GET(PUT、POST、DELETE...)请求服务器响应401 Unauthorized,WWW-Authenticate指定认证算法,realm指定安全域...

iOS适配暗黑模式

iOS适配暗黑模式
暗黑模式适配 2020年4月苹果审核需要对提交的版本适配暗黑模式,此消息一出就吓了我一身冷汗,翻阅了很多资料去查询怎么适配暗黑模式类似的帖子,然而没有搜索到太多有价值的文章。 经研究决定设计小姐姐出了一套暗黑模式的设计图,看到设计的一刻让我感觉到了暗黑模式没有想象中的那么可怕,我也先给你同行们先吃一刻定心丸。 现在为了上架你可能是暂时关闭了暗黑模式 1、暂时全局关闭暗黑模式: ...

iOS 蓝牙设备名称缓存问题总结

iOS 蓝牙设备名称缓存问题总结
1. 问题背景 当设备已经在 App 中连接成功后修改设备名称App 扫描到的设备名称仍然是之前的名称App 代码中获取名称的方式为(perpheral.name) 2. 问题分析 当 APP 为中心连接其他的蓝牙设备时。 首次连接成功过后,iOS系统内会将该外设缓存记录下来。 下次重新搜索时,搜索到的蓝牙设备时,直接打印 (peripheral.name),得到的是之前缓存中的蓝牙名称。 如果此期间蓝牙设备更新了名...
Copyright © ios教程,苹果粉丝,苹果资讯,ios入门教程,ios学习,ios程序员,ios视频教程,ios粉丝网 保留所有权利.   Theme  Ality

用户登录