iOS_制作 cocopods库

文章目录

  • 1.创建项目
  • 2.配置项目
  • 3.发布


1.创建项目

在 github 上创建仓库,克隆到本地:

git clone https://github.com/mxh-mo/MOOXXX.git

在项目目录下执行:

pod lib create <库名称>

进行一些配置的选择:

# 希望在那个平台上使用
What platform do you want to use?? [ iOS / macOS ]> iOS# 希望使用什么语言
What language do you want to use?? [ Swift / ObjC ]> Swift# 是否包含 demo 工程在你的库里
Would you like to include a demo application with your library? [ Yes / No ]> Yes# 需要使用哪个测试框架
Which testing frameworks will you use? [ Quick / None ]> None# 需要包含 UI 测试么
Would you like to do view based testing? [ Yes / No ]> No

在这里插入图片描述


2.配置项目

打开 <项目名>.podspec 文件,对项目进行配置:

Pod::Spec.new do |s|s.name             = '<库名>'s.version          = '<库版本>'s.summary          = '<简短描述>'s.description      = <<-DESC
<详细描述。。。。。。。。。。。。。。。。。。。。。。。。>DESCs.homepage         = '<主页地址>'s.screenshots     = '<截图地址1>', '<截图地址2>'s.license          = { :type => 'MIT', :file => 'LICENSE' }  # 证书s.author           = { 'momo' => '123456@qq.com' } # 作者信息s.source           = { :git => '<远程仓库地址>', :tag => s.version.to_s }s.social_media_url = '<社交平台地址>'s.ios.deployment_target = '10.0' # iOS系统支持的最低版本s.source_files = 'MOODemo/Classes/**/*' # 资源文件目录s.resource_bundles = { # bundle 打包的资源文件'MOODemo' => ['MOODemo/Assets/*.png']}s.public_header_files = 'Pod/Classes/**/*.h' # 公开的头文件s.frameworks = 'UIKit', 'MapKit' # 使用到的系统库s.libraries = 'c++', 'bz2', 'iconv', 'z.1.2.8' # 依赖的系统静态库s.dependency 'AFNetworking', '~> 2.3' # 依赖的第三方库
end

修改完成后进行验证:

pod lib lint --allow-warnings 	# 验证本地库
pod spec lint --allow-warnings	# 验证远端

Tips: --allow-warnings 这个指令用来忽略警告


3.发布

注册账户:

pod trunk register <邮箱> '<你的名称>'

打开邮箱验证

# 发布公有库
pod trunk push <项目名>.podspec
# 发布私有库
pod repo push <仓库地址> <项目名>.podspec

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/210965.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

随机分词与tokenizer(BPE->BBPE->Wordpiece->Unigram->sentencepiece->bytepiece)

0 tokenizer综述 根据不同的切分粒度可以把tokenizer分为: 基于词的切分&#xff0c;基于字的切分和基于subword的切分。 基于subword的切分是目前的主流切分方式。subword的切分包括: BPE(/BBPE), WordPiece 和 Unigram三种分词模型。其中WordPiece可以认为是一种特殊的BPE。完…

实时最优控制(Real-Time Optimal Control)工具

系列文章目录 前言 许多现代控制方法&#xff0c;如模型预测控制&#xff08;model-predictive control&#xff09;&#xff0c;在很大程度上依赖于实时解决优化问题。特别是&#xff0c;高效解决优化控制问题的能力使复杂机器人系统在实现高动态行为&#xff08;highly dyna…

求Sn=m+mm+mmm+...+mm..mmm(有n个m)的值

题目&#xff1a;求 的值 一、做这个题我们其实可以直接一个for求解&#xff1a; a,aa,aaa...我们很容易知道它们后一项与前一项的关系就是&#xff1b; public static void Sum(int m,int n){long sum 0L;long curAn 0;for (int i 0; i < n; i){curAn m 10* curAn;/…

Qexo博客后台管理部署

Qexo博客后台管理部署 个人主页 个人博客 参考文档 https://www.oplog.cn/qexo/本地部署 采用本地Docker部署管理本地Hexo 下载代码包 若无法下载使用科学工具下载到本地在上传到服务器 wget https://github.com/Qexo/Qexo/archive/refs/tags/3.0.1.zip# 解压 unzip Qexo…

C++中的前缀和

C中的前缀和&#xff08;Prefix Sum&#xff09;是一种优化算法&#xff0c;用于计算原数组中每个元素前缀和&#xff08;前面所有元素的累加和&#xff09;&#xff0c;可以在O(n)时间内实现。 #include<iostream> using namespace std;const int MAXN 100010;int Pre…

Linux comm命令教程:如何比较两个文件的内容(附案例详解和注意事项)

Linux comm命令介绍 comm命令是Linux系统中的一个命令&#xff0c;用于比较两个已排序的文件或流。默认情况下&#xff0c;comm将始终显示三列。第一列显示只在第一个文件中的非匹配项&#xff0c;第二列显示只在第二个文件中的非匹配项&#xff0c;第三列显示两个文件中的匹配…

Java开源工具库Guava使用指南

Guava是一个功能强大的Java开源工具库&#xff0c;提供了很多实用的工具类和函数&#xff0c;可以简化开发过程。本文将介绍Guava的一些基本用法和常用功能。 添加Guava依赖 在开始使用Guava之前&#xff0c;首先需要在项目中添加Guava的依赖。可以通过Maven或Gradle来管理依…

Centos7.9下的celery无法直接使用-没有找到命令

问题 关于centos7.9下执行celery -A project worker -l debug -P eventlet 找不到celery命令 -bash: celery: command not found 解决办法 # /usr/local/Python3 为你的python路径 echo export PATH/usr/local/Python3/bin:$PATH >> /etc/profile.d/python3.sh source /…

在循环内错误使用函数定义(js的问题)

考虑下面代码&#xff1a; var elements document.getElementsByTagName(input); var n elements.length; // Assume we have 10 elements for this example for (var i 0; i < n; i) {elements[i].onclick function() {console.log("This is element #" …

利用WSL Linux编译OpenBMC

WSL2安装 &#xff08;1&#xff09; 旧版 WSL 的手动安装步骤 | Microsoft Learn &#xff08;2&#xff09; https://www.cnblogs.com/37yan/p/16169564.html &#xff08;3&#xff09; 在win10中安装linux--使用WSL_wsl.conf-CSDN博客 安装Ubuntu 18.04 on Windows 安…

联合体和枚举

联合体&#xff1a; 联合体是什么&#xff1f; 联合体也是一种自定义类型&#xff0c;这种类型定义的变量也包含一系列类型&#xff0c;特征是这些类型公用一块内存空间(所以叫联合体也叫公用体)可以理解为结构体公用一块内存。 //联合-联合体-共用体 //联合也是一种特殊的自…

TOMCAT9安装

1、官网下载 2、解压到任意盘符&#xff0c;注意路径不要有中文 3、环境变量 path 下 配置 %CATALINA_HOME%\bin 4、找到tomcat9/bin&#xff0c; 点击 start.bat启动 tomcat

目标检测、目标跟踪、重识别

文章目录 环境前言项目复现特征提取工程下载参考资料 环境 ubuntu 18.04 64位yolov5deepsortfastreid 前言 基于YOLOv5和DeepSort的目标跟踪 介绍过针对行人的检测与跟踪。本文介绍另一个项目&#xff0c;结合 FastReid 来实现行人的检测、跟踪和重识别。作者给出的2个主…

jsp 设备预约管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 设备预约管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.0…

SQL命令---添加新字段

介绍 使用sql语句为表添加新字段。 命令 alter table 表名 add 新字段名 数据类型;例子 向a表中添加name字段&#xff0c;类型为varchar(255)。 alter table a add name varchar(255);下面是执行添加有的表结构&#xff1a;

TimescaleDB-1 安装

前置条件&#xff1a; 1、操作系统ubuntu2204 2、已经通过apt的方式安装了pg14 当然其他的操作系统&#xff0c;官方文档中也有说明。 一、安装 https://docs.timescale.com/self-hosted/latest/install/installation-linux/ Installing self-hosted TimescaleDB on Debian-…

springboot+jdbcTemplate+sqlite编程示例——以沪深300成分股数据处理为例

引言 我们在自己做一些小的项目或者小的数据处理分析的时候&#xff0c;很多时候是不需要用到mysql这样的大型数据库&#xff0c;并且也不需要用到maven这样很重的框架的&#xff0c;取而代之可以使用jdbcTemplatesqlite这样的组合。 本文就介绍一下使用springbootjdbcTempla…

课堂练习3.4:进程的切换

3-9 课堂练习3.4:进程的切换 进程切换是支持多进程的一个关键环节,涉及到 CPU 现场的保存和恢复,本实训分析 Linux 0.11 的进程切换过程。 第1关第一次进程切换过程分析 任务描述 本关任务回答问题: 在第一次进程切换时: 1.是从几号进程切换到几号进程?0 号进程和 1 号…

Linux指令——scp:传输文件

Linux指令——scp&#xff1a;传输文件 简介&#xff1a; Linux文件互传指令 使用方法&#xff1a; scp [可选参数] file_source file_target # 可选参数一般为-r&#xff0c;递归传输 # 举例如下&#xff1a; scp /home/test/test.txt root192.168.1.200:/home/test/tes…

Java线程概念详解

线程 概念 1.程序:未解决某种问题,使用计算机语言编写的一些列指令(代码)的集合 2.进程:正在运行的程序(被加载到内存中),是操作系统进行资源分配的最小单位 3.线程:进程可以进一步细化为线程(比进程更小)且线程是隶属于进程的,是操作系统执行的最小的执行单元 也是cpu进行任…