240 发简信
IP属地:天津
  • 120
    iOS灵动岛

    背景 2022.9.8苹果发布会上,最引人注目的一个功能灵动岛问世,当然整个发布会也只有这一个功能能拿出来提一嘴。对于用户而言灵动岛是一种新的交互式,刘海屏改成了药片屏。对于...

  • iOS Widget tips

    记录几个小点,当做备忘,希望也能帮助到你。如果公司让你调研Widget,这一篇也足够用了。 Widget 申请证书时候,需要选择group,为了Widget和主工程共享数据,...

  • 120
    Swift+Redux

    在聊Redux之前,我们先回顾一下之前我们使用过的设计模式MVC,MVVM,MVP,VIPER。如图所示,由于这些设计模式是基于数据的流转来定义,所以我们也可以把他们统称为数...

  • 120
    iOS符号绑定的过程分析

    iOS程序在加载到内存时候,会有一个符号绑定的过程。有两种方式,一种是Non-Lazy,一种是Lazy(懒加载)。通过MachOView,可以看出系统的大部分函数都是懒加载。...

  • 120
    Tweak原理与越狱防护

    本文不包含具体编写插件的内容,只是从Tweak的原理去探究怎么防护插件的注入。 生成一个Tweak插件 有两种方式生成Tweak插件,一种是MonkeyDev,一种是Theo...

  • @默默_David 写操作是因为不需要等待写操作完成,所以用异步。读的话通常都是直接想要结果,如果是异步获取的话就根网络请求一样了。

    iOS多读单写

    在开发中,我们经常会用到针对一个数据存储的多读单写功能。dispatch_barrier_async就能实现该功能,保证你在读的过程中可以多并发,写的过程中可以阻塞其他操作。

  • 同步并发队列

    iOS多读单写

    在开发中,我们经常会用到针对一个数据存储的多读单写功能。dispatch_barrier_async就能实现该功能,保证你在读的过程中可以多并发,写的过程中可以阻塞其他操作。

  • iOS几种砸壳方案

    苹果为了应用安装包的安全,在打包之后,会对应用包进行一个对称加密。而在逆向中,我们需要使用未加密的安装包来进行解析,这时候就需要将应用进行砸壳。砸壳方案有几种,但其核心原理都...

  • 120
    Category、load、initialize、Associated源码解读

    本文主要通过OC的源码剖析了与Category相关的原理。其中包括了Category的运行时方法属性管理、load方法原理、initialize方法原理、关联对象的原理。 先...

  • 基于LLVM的思考

    最近在看LLVM相关代码,产生了一点思考。 LLVM是编译器的基础设施,苹果的Xcode编译系统就是以LLVM展开。 iOS的编译过程,1、预编译,解析头文件,删除注释,宏定...

  • 120
    KVO、KVC源码解读

    KVO KVO是苹果Fundation框架提供的一套键值监听API,全称是Key-Value Observing,可以用于监听某个对象属性值的改变 使用 原理 在运行时,系统...

  • 120
    Mach-O

    Mach-O是什么? Mach-O是Mach object的缩写,是Mac、iOS上用于存储程序、库的标准格式。像iOS的App的可执行文件,就是Mach-O格式 为什么要了...

  • 120
    苹果APP从开发到安装到手机的过程

    苹果APP从开发到安装到手机的过程 首先是代码的编写,等编写完成后,需要进行编译、链接、签名然后形成一个app包再经过zip压缩,修改一下后缀名就成为一个ipa包 有了ipa...