240 发简信
IP属地:上海
  • 120
    ReplayKit屏幕录制

    简介 ReplayKit是iOS推出的功能,他为开发者同时提供了屏幕与用户声音的录制与分享;ReplayKit产生的录音具有高清晰度,并且创建时耗电量少和性能损失小;支持使用...

  • 我也碰到了同样的问题,到iOS工程中,在TARGETS->Build Settings,在Excluded Architectures中添加arm64,再次运行就可以了

    Flutter运行iOS模拟器奇怪问题:模拟器无法运行

    创建flutter项目,初次运行模拟器iPhone 8是运行成功的 Xcode's output: ↳ /Users/gongzuo/Desktop/firstFlutt...

  • 未越狱设备使用动态库

    今天我们分享下如何将上一篇Theos的使用[https://www.jianshu.com/p/40ffa83fb9a6]中生成的动态库在未越狱的设备上使用 拿到自己生成的动...

  • 120
    Theos的使用

    简介 iphoneframework是Theos的前身,这是一个为了简化命令行构建代码而创建的项目(主要是越狱设备)。它后来经历了重大的变化,成为现在的Theos,一个灵活的...

  • 120
    应用砸壳-dumpdecrypted(越狱)之指定Bundle id

    前面记录使用dumpdecrypted进行砸壳的方法[https://www.jianshu.com/p/2d8d8b391ae7],其步骤比较繁琐,今天记录一个简单的方法使...

  • 120
    手动重签营业厅

    之前尝试过用脚本进行应用重签,使用MonkeyDev App对应用重签,但重签的步骤还是一知半解,最近重新看了下手动重签的步骤,对应用重签的步骤有了进一步了解。下面我们来记录...

  • 120
    Mach-O文件解析

    简介 Mach-O是iOS/OS可执行文件。编译成功后,找到app文件->显示包内容,即可找到可执行文件。 常用指令 查看Mach-O格式 查看Mach-O架构 查看Mach...

  • 120
    图像渲染

    图像渲染的过程 图像 => GPU将图片解码 => GPU进行图像渲染 => 存储到帧缓存区 => 视频控制器进行读取帧缓存区信息 => 数模转化 => 显示器逐行扫描显...

  • Dart语法(二)

    Dart语法学习 运算符 特殊运算符 ??= - 原来的变量有值时,那么??=不执行 ?? - 前面的数据有值,那么就使用前面的值;前面值为null,那么就使用后面的值 级...

  • 120
    Dart语法(一)

    Dart的安装 下载Dart SDK,注意此处需要梯子 根据路径配置环境变量 工具的配置 学习Dart语法的时候,选择的是VSCode作为编辑器 VSCode的需要安装的插件...

  • WebViewJavascriptBridge原理解析

    WebViewJavascriptBridge框架可以同时支持UIWebView及WKWebView,完成native与web的交互。其主要核心思路是native在webVi...

  • CALayer-调用流程

    UIView是如何显示一个页面的? CALayer通过代理,将需要绘制的信息传递给View UIView通过CoreGraphics进行绘制的操作 绘制好的内容交给CALay...

  • CALayer-拾遗

    CALayer是什么? 在iOS中,UIView是我们构建UI的基础单元,而UIView之所以可以显示各种元素靠的就是CALayer。当创建UIView对象时,UIView内...

  • 120
    LLDB动态调试

    常用指令 查看当前断点 通过方法名加断点 通过sel加断点 通过不完整的sel加断点 删除断点 断点下一步执行continue(c) - 过掉这个断点step(s) - 往下...

  • 120
    应用重签名-手动

    应用签名原理 描述文件 查看路径:/Users/用户名/Library/MobileDevice/Provisioning Profiles随意找到一个描述文件,然后使用 查...

  • 120
    RxSwift-Scheduler

    Scheduler简介 Scheduler,又称调度者,有一下分类: CurrentThreadScheduler - 当前线程 MainScheduler - 表示主线程,...

  • 120
    RxSwift-publish

    Publish的作用,它可以在序列被订阅后并不会收到消息,只有经过connect后,才会收到消息,并且在被多次订阅后subscribeHandler只会被执行一次,这个是非常...

  • 内存管理相关知识

    内存分区情况 栈区 - 由编译器分配和释放,存放函数参数和局部变量,该区域是向低地址扩展的数据结构,是一段连续的内存区域堆区 - 由开发者负责分配和释放,该区域是向高地址扩展...

  • 120
    RxSwift-combineLast源码解析

    combineLast是RxSwift中常用的函数之一,它可以把多个序列发送的数据进行组装后再返回。它的特点是组合的多个序列都发送信号后,才会有返回值,它是如何做到,后面看下...