Xcode 9.4.1
创建Framework
1.新建工程
打开Xcode,command+n
新建工程,选择Cocoa Touch Framework
,点击next
,命名为StringExtension
。
2.创建文件
StringExtension.swift
是不准备暴露出去的,Test.swift
是准备暴露出去给外界调用的。
需要暴露出来给外界调用的类或方法必须要加上关键字public
。
3.将Scheme
设置为shared
4.使用Carthage
构建Framework
终端进入工程目录下,执行下面代码
$ carthage build --no-skip-current
执行完成以后会发现,目录下多了一个Carthage
文件夹,我们的Framework
就在该文件夹里面。
将Framework上传至Github
1.新建仓库
2.初始化仓库
终端进入工程目录下,执行下面代码
$ echo "# StringExtension" >> README.md
$ git init
$ git add README.md
$ git commit -m "first commit"
$ git remote add origin https://github.com/Geselle-Joy/StringExtension.git
$ git push -u origin master
3.添加gitignore
$ touch .gitignore #这句话只是创建了gitignore文件,记得要打开添加内容
$ git add .gitignore
$ git commit -m "add gitignore"
$ git push
4.添加工程文件
$ git add .
$ git commit -m "add StringExtension"
$ git push
5.添加版本标记
$ git tag 1.0.0
$ git push --tags
到这里我们自己创建的framework
已经上传到github
上了。
调用我们创建的Framework
1.用Xcode创建新项目
创建项目,cd到工程目录
2.创建一个空的carthage文件
$ touch Cartfile
3.编辑Cartfile文件
编辑Cartfile
文件,输入如下内容
github "Geselle-Joy/StringExtension"
版本含义
~> 3.0 表示使用版本3.0以上但是低于4.0的最新版本,如3.5, 3.9
== 3.0 表示使用3.0版本
>= 3.0 表示使用3.0或更高的版本
如果你没有指明版本号,则会自动使用最新的版本
4.保存并关闭Cartfile文件,在终端执行命令
$ carthage update --platform iOS
安装过程如下
$ testss carthage update --platform iOS
*** Cloning StringExtension
*** Checking out StringExtension at "1.0.0"
*** xcodebuild output can be found in /var/folders/8w/s8bn_8c56p9czz75nqdqmp2m0000gn/T/carthage-xcodebuild.ecw6rz.log
*** Building scheme "StringExtension" in StringExtension.xcodeproj
carthage
会为你下载和编译所需要的第三方库,当命令执行完毕,在你的项目文件夹中会出现一个名为Carthage
的文件夹和Cartfile.resolved
的文件。
在~/Carthage/Build/iOS
文件夹里就可以看到我们自己创建的StringExtension.framework
了。
5.导入framework
打开你的项目,选择target
, 再选择上方的General
,将需要的framework
文件拖到 Linked frameworks and Binaries
内。