开场白
本文简单介绍cocoapods本地库的实现,没有原理说明。
1、创建Xcode工程
这个就不用多说了,如果这个不清楚,这篇文章可能不适合你。
2、创建需要的文件
2.1 新建文件夹
进入到工程的目录下,创建文件夹路径:libs/lib/local(文件夹名字看个人需求喜好)

- libs中存放多个本地pod
- lib是其中的一个本地pod,如果本地有多个pod库,就创建多个。目的是文件分类
- local目的是放的自定义类文件
2.2 创建podspec文件
进入到[lib]文件中,创建podspec文件
cd lib
pod spec create local
执行后会在工程目录中出现local.podspec文件

2.3 编辑podspec文件
需要修改podspec中几个地方:
spec.summary = "A short description of TestLocal." => 修改为 spec.summary = "TestLocal."
spec.description = <<-DESC
DESC
修改为
spec.description = <<-DESC
A test of lcoal TestLibary.
DESC
注意: spec.description一定要比spec.summary长
spec.license = "MIT (example)" 修改为 spec.license = "MIT"
spec.source = { :git => "http://EXAMPLE/TestLibary.git", :tag => "#{spec.version}" } 修改为 spec.source = { :git => "", :tag => "#{spec.version}" }
spec.source_files = "Classes", "Classes/**/*.{h,m}" 修改为 spec.source_files = "local", "local/**/*.{h,m}" 因为我们本地的文件夹叫local,如果你用的其它文件夹名就修改你的文件夹名就可以了。为了找到local文件夹下你放进去的文件。
2.4 创建Podfile文件并修改Podfile文件
进入到工程同级目录下创建Podfile文件
pod init
修改Podfile文件,增加 pod 'local', :path => 'libs/lib'
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'LocalPodDemo' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for LocalPodDemo
pod 'local', :path => 'libs/lib'
end
执行pod安装命令
pod install
工程同级目录下就会出现.xcworkspace工作空间文件。

2.5 放入自定义的控件文件

我放进去了TestManager类文件,再重新执行一下pod install命令,打开xcworkspace,就可以看到工程中的pod已经加入了TestManager。

3. 注意
工程名不要用中文,pod中找不到工程的.framework。
网友评论