0%

iOS创建Framwork工程步骤

1.新建远程Git仓库,将空的仓库克隆至本地。

在gitlab上新建一个空的仓库。

2.创建SDK项目,创建项目时选Framework。

创建项目时选Framework。

将项目的目录新建到Git的文件夹中。

3.创建SDK项目的Example工程。Exmaple工程的根目录需要在SDK的根目录中。

创建Example工程。

填写Example工程名。

选择工程的目录。将工程根目录创建到SDK工程根目录下。

最终的项目目录结构如图。

4.在SDK工程目录中创建Podfile文件。

执行pod init命令,在工程目录中创建Podfile文件。

5.编辑podfile文件,指定workspace,添加example和sdk工程的target,target中需要指定.xcodeproj文件的路径;workspace可以提前建好然后指定,如果指定的workspace文件不错在,cocoapods会自动创建,所以只需要在podfile文件中写入想要的workspace的名字;编辑完成后保存。

编辑Podfile文件,将example和sdk工程的target添加到Podfile中。注意example工程的target路径。

6.执行命令Pod install,cocoapods自动创建workspace文件,workspace文件打开前要把workspace关联的工程关闭。

执行Pod install命令,让Pod自动生成workspace文件。

选择workspance文件,打开工程。

打开工程后,目录结构如下图。

7.将文件放入工程,建议先将文件复制到framework工程的文件夹中,可以方便文件夹结构调整并重命名,最后将文件添加到工程,保证target选择正确。

将SDK工程目录下的源代码目录Sources和资源文件目录Resources添加到SDK工程中。

8.编辑podfile文件,添加依赖项,放在target外部意思是两个target都需要引入这些库,但是不管放在内部还是外部,Pod文件夹中引入的第三方库是他们的总和。

编辑Podfile文件,将依赖项放到target外部。

9.工程根目录中创建podspec文件,创建license文件,编辑podspec基本项目(descritpion, license, source, homepage, source_files., resources)。

1
$ pod spec create "组件名"

命令行创建podspec文件。

将podspec文件添加到工程中。

编辑podspec文件。

10.执行pod install。

11.将framework工程的Products文件夹中的framework文件放入Framewors Link配置中。

将项目中生成的Framework库文件添加到Exmaple工程中。

12.使用example或者framework工程的scheme来调试,解决由于文件冲突或者头文件引用方式导致的编译不通过的问题。

选择PHUpdateSDK的Target,编译测试SDK是否可以正常编译通过。选择PHUpdateSDKExample的Target运行测试代码,查看SDK功能是否正常工作。

13.将SDK中的头文件都添加到对应的SDK头文件中。

将SDK中需要暴露出来的.h文件都添加到PHUpdateSDK.h中。

14.将SDK中的头文件移动到外面

将SDK中的头文件从项目中移动到Public Group中。

15.在Example工程中引入SDK中的类

在Example工程中导入SDK中的类,测试SDK中的类是否可以正常工作。

16.在Example中测试SDK代码功能

在Example工程中测试SDK代码是否正常工作

17.创建一个空工程或者利用已有工程作为pod管理,以本地路径的方式pod引入sdk,执行pod install,打开该工程,可以更好的编辑podspec文件,并且在编辑好后可以立即使用pod install命令查看修改结果;全部完成后,可以将pod方式改为使用git地址的方式,查看真实使用效果。

新建本地测试工程,在本地测试工程的Podfile文件中导入SDK工程。

查看本地工程Podfile如何配置。

18.经过最后的修改,最终目录如下。

由于之前的SDK目录比较深,导致pod update的时候无法更新。所以将之前的SDK中的文件全部拷贝到git仓库的根目录下。还有LICENSE文件最好放一个,因为有可能因为这个导致最终的项目更新失败。最终目录结构如下图。