一、创建工程
1.先创建一个文件夹,这里名字随便
![](https://img.haomeiwen.com/i2632731/0b7a4b3f9785cde4.png)
2.创建workspace
![](https://img.haomeiwen.com/i2632731/c979bbe23a2e259d.png)
保存到之前创建的文件夹
![](https://img.haomeiwen.com/i2632731/0964dbc181b5ce50.png)
现在文件夹中是这样的
![](https://img.haomeiwen.com/i2632731/0b1e5abf8aa4633a.png)
这个workspace是为了管理framework和调试framework的demo
3.创建framework工程
![](https://img.haomeiwen.com/i2632731/af66801a977cc623.png)
选择framework
![](https://img.haomeiwen.com/i2632731/f6e4d511b8e229cc.png)
选择next
![](https://img.haomeiwen.com/i2632731/827606dc7f0e20bc.png)
将project添加到之前创建的workspace中
![](https://img.haomeiwen.com/i2632731/56cf44f59c76681e.png)
这样framework创建好了
4.修改framework的配置
![](https://img.haomeiwen.com/i2632731/0f186989d9dbf78c.png)
![](https://img.haomeiwen.com/i2632731/b41be8cbddd63d01.png)
5.创建demo工程,用来测试和运行framework
![](https://img.haomeiwen.com/i2632731/05cd6926a9c087f4.png)
![](https://img.haomeiwen.com/i2632731/9fad7fac99a86524.png)
![](https://img.haomeiwen.com/i2632731/6968b37b040aa5a2.png)
这一步的勾选很重要
![](https://img.haomeiwen.com/i2632731/dfd6b343d9c29bf0.png)
这样framework就和demo在同一工程下了
![](https://img.haomeiwen.com/i2632731/b61d04e2122ad40b.png)
6.编译framework,并导入到demo中,进行调试
此时在SDKTest文件夹中的结构是这样婶的
![](https://img.haomeiwen.com/i2632731/976e5816a734aee7.png)
关闭之前的demo程序,单独打开sdk程序,进行sdk的基本编译
![](https://img.haomeiwen.com/i2632731/ded15dc5cc472174.png)
创建一个测试的类,用来演示
![](https://img.haomeiwen.com/i2632731/12d28b28f3794b0e.png)
![](https://img.haomeiwen.com/i2632731/e6e7a5ff54b7ba87.png)
如果遇到报错,基本上就是这个
![](https://img.haomeiwen.com/i2632731/5b663cefc5988a3c.png)
将需要外部使用的头文件暴露出去
![](https://img.haomeiwen.com/i2632731/68c3222cff12e8b5.png)
![](https://img.haomeiwen.com/i2632731/b8e5a54aff5df931.png)
最后就是编译framework
选择发布环境,command + shift + <
![](https://img.haomeiwen.com/i2632731/07e77433799c8279.png)
选择真机环境
![](https://img.haomeiwen.com/i2632731/1a4241e9769a3676.png)
command + B 编译之后
![](https://img.haomeiwen.com/i2632731/63f36ccfb8f8805e.png)
7.使用和调试framework
打开workspace
![](https://img.haomeiwen.com/i2632731/70b7066dca6c8d05.png)
将framework拖入到demo工程中
![](https://img.haomeiwen.com/i2632731/9a41bb3b9e52efb3.png)
至此,framework的开发打包和调试就结束了。
8.值得注意的问题
一、framework访问内部资源报找不到的问题
这种情况其实是托文件进工程的时候,是直接拖进workspace中,然后进行勾选的,这种情况下,我们以为json文件进入了framework中,其实它的路径却在demo项目中。如果遇到这种情况,需要单独打开framework工程,将json文件拖入到工程中,重新编译framework,再将framework替换,就ok了。
![](https://img.haomeiwen.com/i2632731/7515cf9db65a3c9d.png)
二、如果framework内部引入了c语言的函数,会出现报错的问题,.mm文件也可能出现错误
网友评论