当前位置: 首页 > news >正文

macos创建xcframework及签名

前言

Framework 可以理解为封装了共享资源的具有层次结构的文件夹,共享资源可以是 nib文件、国际化字符串文件、头文件、库文件等等。它同时也是一个 Bundle,里面的内容可以通过 Bundle 相关 API 来访问。Framework 可以是 static framework 或 dynamic framework,其特点是只支持一个平台和架构

XCFramework 是由 Xcode 创建的一个可分发的二进制包,它包含了 framework 或 library 的一个或多个变体,因此可以在多个平台(iOS、macOS、tvOS、watchOS)和多个架构上使用,包括模拟器。XCFramework 可以是静态的,也可以是动态的。

创建xcframework

将framework归档

首先需要在xcode中创建一个framework项目

File->New->Project->Library&Framework->Framework

创建完后,cd到工程所在目录,执行下列command:

xcodebuild archive \
-scheme SimpleMath \
-destination "generic/platform=MacOS" \
-archivePath ../output/SimpleMath \
SKIP_INSTALL=NO \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES

-scheme 指定xcode项目

-destination 指定目标平台

-archivePath 指定输出目录

SKIP_INSTALL=NO 不跳过安装过程

BUILD_LIBRARY_FOR_DISTRIBUTION=YES 发布压缩包内的framework

创建xcframework

执行下列command:

xcodebuild -create-xcframework \
-framework ./SimpleMath.xcarchive/Products/Library/Frameworks/SimpleMath.framework \
-framework ./SimpleMath-Sim.xcarchive/Products/Library/Frameworks/SimpleMath.framework \
-output ./SimpleMath.xcframework

签名

对framework或xcframework签名,使用codesign命令:

codesign --timestamp -v --sign "Your identity name" SimpleXCF.xcframework

–timestamp: 通过apple的时间戳服务器获取时间戳

签名时使用的identity,可以是Apple Developer Identity, 也可以是自签名的证书,自签名证书可以通过macos的KeyChain Access来创建,可以在 "钥匙串访问" 应用中创建一个。打开 “钥匙串访问”,然后从菜单中选择 “钥匙串访问” -> “证书助手” -> “创建证书”。然后填写证书信息,选择 “代码签名” 作为证书类型,然后点击 “创建”。

  • 重新签名

对于已经签名过的framework,可以使用-f参数强制重新签名,用新的签名覆盖掉以前的签名

codesign -f -s "证书名称" /path/to/your.framework
  • 移除签名
codesign --remove-signature YourFramework.framework
  • 验证签名
codesign --verify --verbose YourFramework.framework

《C++ Primer》《Effective C++》是C++开发者必不可少的书籍,如果你想入门C++,以及想要精进C++开发技术,这两本书可以说必须要有。此外,《Linux高性能服务器编程》以及《Linux多线程服务端编程:使用muduo C++网络库》.(陈硕)》是快速提高你的linux开发能力的秘籍。《大话设计模式》可以增强我们的模型提取及设计能力,写出更优雅的代码。同时,《操作系统导论》更是开发必读书目,在网上搜索相关资源也要花费一些力气,需要的同学可以关注公众号【程序员DeRozan】,回复【1207】快速免费领取~

相关文章:

macos创建xcframework及签名

前言 Framework 可以理解为封装了共享资源的具有层次结构的文件夹,共享资源可以是 nib文件、国际化字符串文件、头文件、库文件等等。它同时也是一个 Bundle,里面的内容可以通过 Bundle 相关 API 来访问。Framework 可以是 static framework 或 dynamic…...

Oracle与Redis Enterprise协同,作为企业缓存解决方案

来源:虹科云科技 虹科干货丨Oracle与Redis Enterprise协同,作为企业缓存解决方案 欢迎关注虹科,为您提供最新资讯! 单独使用Oracle作为企业缓存数据库时,会出现哪些问题呢?使用Redis Enterprise与Oracle共…...

局部保持投影(Locality preserving projections,LPP)

局部保持投影(Locality preserving projections,LPP) 方法概述 核心思想 有映射 Y m ∗ n f ( X d ∗ n ) \underset{m*n}{Y}f(\underset {d*n}X) m∗nY​f(d∗nX​),能够实现将d维的样本变换到m维空间之中 假设:对…...

Flutter:引领移动开发新潮流,跨平台应用程序的终极解决方案

文章目录 一、介绍二、环境搭建三、基础组件四、生命周期管理五、路由控制六、网络请求七、数据存储八、调试与优化《从零基础到精通Flutter开发》特色内容简介作者简介目录获取方式 一、介绍 Flutter是由Google开发的一款开源移动应用开发框架,它可以帮助开发者快…...

开源免费的流程设计器如何选型

大家在开发OA办公自动化、ERP、CRM、BPM、低代码平台等项目的时候,经常用到流程引擎,目前主流的开源流程引擎有activiti、flowable、camunda。这几个开源的流程引擎均基于BPMN2.0国际规范标准,其功能均比较强大,接口也很丰富。但涉…...

设置pdb自动启动

参考文档: How to Preserve Open Mode of PDBs When the CDB Restarts (Doc ID 1933511.1) -- 查看pdb的保留状态.无保留状态 select * from DBA_PDB_SAVED_STATES; SYScdbtest SQL> select * from DBA_PDB_SAVED_STATES;no rows selectedSYScdbtest SQL> -…...

抖店入驻成功后,新手需要怎么做?7天起店流程教会你!

我是电商珠珠 在抖店入驻成功后,很多新手并不知道怎么将抖店做起来。 我做抖店也已经3年时间了,期间也带着想做店的小伙伴一起,是第一波入驻抖店,并吃到抖店红利的商家。 虽然现在抖店起店比着去年、前年相对难了一些&#xff…...

RTS 客户端-服务器网络

Stone Monarch 从一开始就支持多人游戏,但随着时间的推移,网络模型经历了多次迭代。我最初基于这篇著名的帝国时代文章实现了点对点锁步模型。 点对点锁定步骤有一些众所周知的问题。点对点方面使玩家很难相互连接,并增加了每个新玩家的网络…...

python连接数据库的方式

python连接数据库的方式 pyzenith.connect()函数就是连接数据库; exception.ScriptException()这一句是自定义异常,可以不用我这个; finally里面还有一个try finally是有必要的,防止…...

【腾讯云云上实验室-向量数据库】探索腾讯云向量数据库:全方位管理与高效利用多维向量数据的引领者

目录 前言1 腾讯云向量数据库介绍2 向量数据库信息及设置2.1 向量数据库实例信息2.2 实例监控2.3 密钥管理2.4 安全组2.5 Embedding2.6 可视化界面 3 可视化界面4 Embedding4.1 embedding_coll精确查询4.2 unenabled_embedding_coll精确查询 5 数据库5.1 创建数据库5.2 插入数据…...

二、sql手工注入

一、SQL注入的本质 解释:想要进行sql注入,肯定要发现注入点,一般简单的sql注入通过下面两种方式判断就能发现是否存在sql注入漏洞 1.字符型 注意:字符型注入可能为或" 查询语句: select * from student where…...

day61 layui和分页原理

昨日内容回顾 choices参数的使用 一般用在什么场景:当被存储的字段数据可能被列举完毕的时候一般会使用choices参数 性别 学历 来源 工作经验等 一般情况下不在数据表中直接存储中文,存数字、存字母来做映射 # 怎么使用 gender_choices ((1, 男),(2…...

Rust开发——变量、静态变量与常量

1.变量 在 Rust 中,类型安全是通过静态类型系统来实现的。变量绑定默认情况下是不可变的(immutable)。 在 Rust 中声明一个变量时,默认情况下它是不可变的。例如: fn main() {let x :i32 5; // 这是一个…...

javascript Math相关计算取值属性方法

*向上取整【只要有小数就+1】 Math.ceil(3.14); // 4 *向下取整【有小数就舍弃】 Math.floor(3.14); // 3 parseInt(3.14); // 3 // 常用于字符串类型的数字转为十进制的数据 四舍五入【小数点后部分】 Math.round(11.5)); //12 Math.round(-11.5)); //-11 取两数…...

git reset hard,mixed,soft

首先&#xff0c;我们得了解git reset命令的形式之一&#xff1a; git reset [<mode>] [<commit>] 此命令的作用是恢复HEAD分支到<commit>位置&#xff0c;并根据<mode>决定是否恢复index file和working tree。恢复是指将staging area和working tree…...

Cookie与Session知识

目录 一.Cookie与Session的发展史 1.Cookie的发展史 2.Session的发展史 3.Cookie和Session的关系 4.总结 二.Cookie与Session详解 1.Cookie 2.Session 3.token 4.总结 三.Django操作Cookie 1.设置Cookie 2.获取Cookie 3.设置超时时间 4.注销Cookie 5.登录功能实…...

Vue批量全局处理undefined和null转为““ 空字符串

我们在处理后台返回的信息&#xff0c;有的时候返回的是undefined或者null&#xff0c;这种字符串容易引起用户的误解&#xff0c;所以需要我们把这些字符串处理一下。 如果每个页面都单独处理&#xff0c;那么页面会很冗余&#xff0c;并且后期如果有修改容易遗漏&#xff0c…...

【2023年APMCM亚太杯C题】完整数据与解题思路

2023年亚太杯C题 数据下载与搜集重点数据其余数据第一问第二问第三问第四问第五问第六问 数据与思路获取 数据下载与搜集 该题并没有提供数据集&#xff0c;对所需数据进行收集整理是对题目进行求解的基础。在本题中&#xff0c;主要需要以下数据&#xff1a;新能源汽车历史销…...

嵌入式单片机方向和Linux驱动开发方向哪个发展前景好?

嵌入式单片机方向和Linux驱动开发方向哪个发展前景好&#xff1f; 在某些平台上看到很多人鼓吹嵌入式Linux开发比单片机开发要好&#xff0c;让所有人都去做嵌入式Linux开发。说这种话的人大多数是嵌入式Linux的培训机构&#xff0c;或者是一开始就以嵌入式Linux入门的那一批人…...

如何搭建Zblog网站并通过内网穿透将个人博客发布到公网

文章目录 1. 前言2. Z-blog网站搭建2.1 XAMPP环境设置2.2 Z-blog安装2.3 Z-blog网页测试2.4 Cpolar安装和注册 3. 本地网页发布3.1. Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1. 前言 想要成为一个合格的技术宅或程序员&#xff0c;自己搭建网站制作网页是绕…...

NVIDIA WJH技术:网络故障诊断的革命性解决方案

1. 网络诊断新利器&#xff1a;NVIDIA WJH技术解析在数据中心和云计算环境中&#xff0c;网络问题排查一直是运维团队最头疼的挑战之一。记得去年我们团队处理过一个典型的案例&#xff1a;某AI训练集群性能突然下降30%&#xff0c;传统监控工具显示所有链路都"健康"…...

PaddleOCR-VL双模态文档解析技术详解

1. PaddleOCR-VL技术架构解析PaddleOCR-VL作为当前文档解析领域的前沿解决方案&#xff0c;其核心技术架构采用了双模态融合设计。视觉侧采用NaViT&#xff08;Non-isometric Vision Transformer&#xff09;风格的编码器&#xff0c;这种结构能够灵活处理不同长宽比和分辨率的…...

吉利汽车第一季营收838亿:净利42亿同比降27% 交付70.94万辆车

雷递网 乐天 4月29日吉利汽车&#xff08;股票代码&#xff1a;00175.HK&#xff09;今日发布截至2026年3月31日的财报。财报显示&#xff0c;吉利汽车2026年第一季度营收为837.76亿元&#xff0c;较上年同期的726.92亿元增长15%。吉利汽车2026年第一季度母公司拥有人应占利润为…...

5大行业场景深度解析:YOLO Face人脸检测技术如何重塑商业智能应用

5大行业场景深度解析&#xff1a;YOLO Face人脸检测技术如何重塑商业智能应用 【免费下载链接】yolo-face YOLO Face &#x1f680; in PyTorch 项目地址: https://gitcode.com/gh_mirrors/yo/yolo-face 在人工智能技术快速发展的今天&#xff0c;人脸检测已成为智能安防…...

Awesome Free Software与开源软件的区别:为什么自由软件更重要

Awesome Free Software与开源软件的区别&#xff1a;为什么自由软件更重要 【免费下载链接】awesome-free-software Curated list of open-source, free as in freedom software. 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-free-software 在数字时代&#x…...

IoT设备可靠性实战:从MTBF理论到云端监控告警(基于Node-RED与ThingsBoard)

IoT设备可靠性实战&#xff1a;从MTBF理论到云端监控告警&#xff08;基于Node-RED与ThingsBoard&#xff09; 工业物联网设备的可靠性直接影响生产效率和运维成本。想象一下&#xff0c;当一台关键设备在凌晨3点突然停机&#xff0c;而值班人员直到早班交接时才发现问题——这…...

从论文到实践:手把手复现UFLDv2车道线检测模型(PyTorch版)与CULane数据集评测指南

从零构建UFLDv2车道检测系统&#xff1a;PyTorch实战与CULane评测全解析 车道线检测作为自动驾驶感知系统的核心组件&#xff0c;其准确性和实时性直接影响着车辆的安全行驶。传统基于分割的方法虽然直观&#xff0c;但存在计算成本高、对遮挡场景适应性差等固有缺陷。UFLD系列…...

太原盾构机运输

随着我国城市轨道交通建设的高速推进&#xff0c;盾构机作为隧道施工的核心装备&#xff0c;其运输需求日益增长。如何安全、高效地将重达数百吨的巨型设备从生产基地运往施工一线&#xff0c;已成为大件运输领域的重要课题。本文将深入探讨以【太原重卡叔叔运输有限公司】为代…...

2026 湖南智慧票务系统公司推荐榜

随着湖南文旅产业高质量发展&#xff0c;全省 A 级景区及文博场馆数字化改造全面铺开&#xff0c;智慧票务作为景区数字化的核心入口&#xff0c;需求持续攀升。本次榜单综合系统技术成熟度、项目落地数量、运行稳定性、本地化服务能力及售后响应速度五大客观维度&#xff0c;筛…...

Mobaxterm连接不上CentOS 7?先检查这3个服务(附Windows服务开启方法)

Mobaxterm连接CentOS 7终极排障指南&#xff1a;从服务层到网络配置的深度解析 当你盯着Mobaxterm那个迟迟不响应的终端窗口&#xff0c;心里可能已经默念了无数遍"为什么连不上"。大多数教程会告诉你检查IP、防火墙或网络模式&#xff0c;但真正的问题往往藏在更深层…...