移动开发

在UIKit中使用SwiftUI(SwiftUI和UIKit混合开发)

在UIKit中使用SwiftUI,需要使用UIHostingController对SwiftUI进行包装,返回的是UIViewController类型。 但是UIHostingController是SwiftUI的类,在OC中是不可以直接使用的,所以我们可以先创建一个Swift管理类,用来返回被包装的SwiftUI的控制器是UIViewController类型,可以直接在OC代码中使用。 如果还不

Android卡顿监控

实现思路 卡顿监控主要监控:慢方法的监控、ANR的监控、掉帧的监控。其实现方案主要有三种: Looper的Printer在消息执行前后的打印,计算出消息执行时间。 利用Choreographer向其注册CALL_BACK, 监听Vsync的开始从而得到上一帧的执行时间。 利用插桩的方法计算每个方法的执行时间。 比如对慢方法、ANR的监控,则是对主线程的Looper的消息的监听,对掉

TLS、SSL、CA 证书、公钥、私钥。。。今天捋一捋!

松哥最近在和小伙伴们连载 gRPC,如何确保 gRPC 通信的安全性?这就涉及到 TSL 了,但是考虑到可能有小伙伴对加密连接这一整套方案比较陌生,因此我们今天先用一篇文章跟大家捋清楚这些概念,概念搞明白了,再来看 TSL+gRPC 就很容易了。 1. HTTP 的问题 HTTP 协议是超文本传输协议(Hyper Text Transfer Protocol)的缩写,它是从 WEB 服务器传输超文

Swift版本的TableManager

一、概述 在OC的轮子中,使用一个RETableviewManager的轮子,核心原理是数据驱动页面,cell-item 一一对应,对UITableview页面的封装。 只要写好对应item和cell类,然后注册,交给manager即可,构建完整的页面;同时一些cell和item是可以被不同列表进行复用,只要给不同的item即可。 本人觉得项目使用效果还不错,因此写了个swift版本。 TBD:目

Socket工作模式之WSAAsyncSelect模型

WSAAsyncSelect(异步选择)模型 ①WSAAsyncSelect(异步选择)模型介绍 Windows Sockets为了支持Windows消息驱动机制,使开发者能够方便地处理网络通信,它对网络事件采用基于消息的异步存取策略。该异步策略主要是通过异步选择函数WSAAsyncSelect()来实现的,该函数提供了消息机制的网络事件选择,当使用它登记的网络事件发生时,Windows应用程序相

在windows或者mac配置安装miniforge3

Windows 系统安装步骤 1. 下载 Miniforge3 安装包访问 Miniforge 官方下载页: Windows 的版本: 64 位系统:Miniforge3-Windows-x86_64.exe 32 位系统&#xff08

Android UpdateEngine模块流程

Android A/B升级又称静默升级,它是一种在系统运行过程中进行的升级功能。为了减小系统运行负荷,整个升级过程会保持在一个较低的IO状态,所以升级时间比recovery升级明显要长。本文是基于Android 12 AOSP源码,对update engine模块的流程进行梳理,最主要的内容是绘制的几张序列图。1. 概述upda

android 打包多个 apk

1、配置 gradle 文件 ./app/build.gradle android { defaultConfig { flavorDimensions "default" } // 多应用打包 productFlavors { // 默认 defaults { manifestPlaceholders = [app_name

解决Xcode14"Application circumvented Objective-C runtime dealloc initiation for <%s> object"

升级到Xcode14后,App莫名其妙一运行就闪退,断点也分析捕捉不到对应的地方,日志一直显示"Application circumvented Objective-C runtime dealloc initiation for &lt;%s&gt; object",看起来像是apple底层代码迭代后导致的问题。 后面花了很多时间排查,定位到了是老项目中引入了IQKeyboardManager