xcode4.3下制作framework——(xcode4.2下也通用)

将自己的类封成库供别人调用,非常方便,就行xcode中的许多类库一样。那么如何制作自己的类库呢?

本人在网上看过很多童鞋的文章,都没有试成功,最后在同事的帮助下搞定。今天有点空闲时间,赶紧记下来,一是跟大家分享,二是怕忘了,今天有同事问我,都感觉有点生了,所以有了这篇文章。

 

下面教大家一步步制作framework

 

1、         新建一个项目选择Framwork&Library中的Cocoa Touch Static Library。如图

 


2、         命名项目名称

 


3、         加载自己要封装的东西

 


4、         加载自己的代码

 


5、         选择设备和模拟器两种方式,编译生成libhello_world.a文件

 


6、         查看是否生成两个文件

 


7、         选择Fill——>New——>Taget弹出界面选择Aggregate

 


8、         命名类库的名称

 


9、         选择Taget :HelloWorld的Bulid Phases选项卡

 


10、     添加Taget

 


11、     点击又下角Add Build Phase,选择Add Run Script。贴上这段脚本

xcodebuild -project ${PROJECT_NAME}.xcodeproj -sdk iphonesimulator -target ${PROJECT_NAME} -configuration ${CONFIGURATION} clean build

 

xcodebuild -project ${PROJECT_NAME}.xcodeproj -sdk iphoneos -target ${PROJECT_NAME} -configuration ${CONFIGURATION} clean build

 


12、     同样的方法添加另一个脚本,脚本的意思我没有研究,你可以详细看看

SIMULATOR_LIBRARY_PATH="${BUILD_DIR}/${CONFIGURATION}-iphonesimulator/lib${PROJECT_NAME}.a" &&

DEVICE_LIBRARY_PATH="${BUILD_DIR}/${CONFIGURATION}-iphoneos/lib${PROJECT_NAME}.a" &&

UNIVERSAL_LIBRARY_DIR="${BUILD_DIR}/${CONFIGURATION}-iphoneuniversal" &&

UNIVERSAL_LIBRARY_PATH="${UNIVERSAL_LIBRARY_DIR}/${PRODUCT_NAME}" &&

FRAMEWORK="${UNIVERSAL_LIBRARY_DIR}/${PRODUCT_NAME}.framework" &&

 

# Create framework directory structure.

rm -rf "${FRAMEWORK}" &&

mkdir -p "${UNIVERSAL_LIBRARY_DIR}" &&

mkdir -p "${FRAMEWORK}/Versions/A/Headers" &&

mkdir -p "${FRAMEWORK}/Versions/A/Resources" &&

 

# Generate universal binary for the device and simulator.

lipo "${SIMULATOR_LIBRARY_PATH}" "${DEVICE_LIBRARY_PATH}" -create -output "${UNIVERSAL_LIBRARY_PATH}" &&

 

# Move files to appropriate locations in framework paths.

cp "${UNIVERSAL_LIBRARY_PATH}" "${FRAMEWORK}/Versions/A" &&

ln -s "A" "${FRAMEWORK}/Versions/Current" &&

ln -s "Versions/Current/Headers" "${FRAMEWORK}/Headers" &&

ln -s "Versions/Current/Resources" "${FRAMEWORK}/Resources" &&

ln -s "Versions/Current/${PRODUCT_NAME}" "${FRAMEWORK}/${PRODUCT_NAME}"

 


13、     点击右下角的Add Build Phase,选择Add Copy Files。在Destination选项中选择Absolute Path,在Subpath路径加载路径:${BUILD_DIR}/${CONFIGURATION}-iphoneuniversal/${PRODUCT_NAME}.framework/Versions/A/Headers

 


14、     点击“+按钮”,加载你要封装的.h文件

 


 


15、     选择Taget: HelloWorld进行编译

 


16、     然后选择libhello_world.a文件,右键选择Show in Finder。Debug-iphoneuniversal就是生成的framework。

 


17、     如果Headers文件夹里面为空,则把你封装的.h文件复制到里面,之后就可以在你的程序中使用了。

18、     至此framework制作完成,效果图:

 


转自:http://www.cnblogs.com/weilihua/archive/2012/04/20/2457486.html


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值