ios 内部库的创建和使用

在开发项目的过程中,会使用到全局的宏定义,公共开发的组件,供项目内部使用,随着业务的不断增长,可以封装的公共组件越来越多,那么有没有好的方式来统一管理这些组件呢,这就是我今天要和大家分享的内部库的创建和使用。好了,直接进入到今天的主题,如何创建和管理内部库。

创建内部公共功能组件库

我会以自己项目中使用到的一个逆时针进度条来举例,说明如何去创建和使用一个内部公共功能的组件库.具体操作步骤如下:

使用gitee创建一个项目,并clone到本地
截屏2021-03-22 上午11.31.08.png
进入到项目根目录下,创建Frameworks文件夹,进入到Frameworks文件夹下,创建PSPublibs文件夹,然后在PSPublibs文件夹下分别创建PSPublibs.podspec,LICENSE,src,assets文件夹.接下来分别介绍这四个文件夹的用途
  • PSPublibs.podspec

PSPublibs.podspecPSPublibs库的Pod描述文件,用于描述该Pod库的一个特定版本信息。它存放在 CocoaPods 的中心 Repo 供使用者查找和使用。

随着这个Pod 库的迭代,CocoaPods 的中心 Repo 会为每个特定的 Pod 版本存放一个对应的 podspec 文件。每个 podspec 文件都包括 Pod 对应 RepoURL、源码存放的位置、所支持的系统平台及其系统最低版本号,以及 Pod 的名字、版本号和描述等信息。

PSPublibs.podspec中的相关配置如下

Pod::Spec.new do |s|
  s.name             = 'PSPublibs.podspec'
  s.version          = '1.0.0'
  s.summary          = '项目中自用的公共组件'

# This description is used to generate tags and improve search results.
#   * Think: What does it do? Why did you write it? What is the focus?
#   * Try to keep it short, snappy and to the point.
#   * Write the description between the DESC delimiters below.
#   * Finally, don't worry about the indent, CocoaPods strips it!

  s.description      = <<-DESC
Contains the decomponents for Design System.
                       DESC

  s.homepage         = 'https://gitee.com/nbns/pspubliclib'
  s.license          = 'MIT'
  s.author           = 'MIT'
  s.source           = { :path => '.' }

  s.ios.deployment_target = '13.0'

  s.source_files = 'src/**/*'
  # s.resources = 'assets/**/*'

end
LICENSE

LICENSE 是许可证文件,如果是开源库,我们必须严格选择一个许可证,这样才能方便其他开发者使用我们的库。

src

所有源代码文件都存放在src文件夹下面

assets

存放图片、XibStoryboard 等资源文件

将封装好的内部组件库拖至src文件夹下,按照对应组件的名称分类成不同的文件夹
截屏2021-03-22 下午12.00.01.png
使用pod lib lint库检测内部库配置文件是否正确
  • 需要注意的是, CocoaPods 对内部库的检测存在一个 Bug, 会显示下面的警告:
Missing primary key for `source` attribute

由于我们创建的是内部库,所以可以忽略这个警告,只要没有其他错误信息就可以了。

到这里,内部组件库的创建就已经完成了,接下来,看看如何在项目中使用内部库

使用内部公共功能组件库

由于是内部组建库,所以需要我们创建的项目和Frameworks在同一层级

  • 创建一个Xcode项目,保证该项目和Frameworks在同一层级,文件目录如下:
    截屏2021-03-22 下午12.18.42.png
  • cd到该目录文件,创建pod文件,具体如下:
platform:'ios',13.0
target 'pspubliclib'do
pod 'PSPublibs', :path => './Frameworks/PSPublibs', :inhibit_warnings => false
end
  • 执行pod install命令,待下载完成后,打开项目,查看本地组件库是否可以引用到,如果可以引用到,就可以了.

至此,内部库的创建和使用都已经讲解完了,如果有问题,欢迎到评论去留言。

你可能感兴趣的:(ios 内部库的创建和使用)