IOS_Xcode4.6製作framework

本稿來自本羣 【Misery_IOS_武漢】投稿,初次投稿值得鼓勵,而且重點是步驟很詳細。感謝支持與配合!

以下是Misery的分享內容:


1.    新建一個 Project,選擇CocoaTouch Static Library,取工程名爲MarkKit,如圖:




2    刪除target,如圖:



3. 在Xcode中new->file->target新建一個target;選擇OS X目錄下FrameWork&Library中的Bundle,取名爲MarkiOSKit,如圖:



4.    刪除MarkiOSKit中MarkiOSKit-Prefix.pch中的#import<Cocoa/Cocoa.h>,如圖:



5.修改target設置

  Build Settings選項卡:

    Base SDK選擇Latest iOS(iOS 6.1)

    Build ActiveArchitecture Only選擇NO

Dead Code Stripping選擇NO

Mach-O Type選擇Relocatable Object File

Link With Standard Libraries選擇NO

Wrapper Extension修改爲framework 

  Info選項卡:

Bundle OS Type code 修改爲FMWK

  Build Phases選項卡:

點擊右下角的Add Build Phases,選擇AddCopy Headers. 添加頭文件和源文件如圖:





6.    在MarkKit.h和MarkKit.m裏面寫入你的函數聲明和實現:

//MarkKit.h

#import <Foundation/Foundation.h>

@interface MarkKit : NSObject

- (void)printMarkKit;

@end

// MarkKit.m

#import "MarkKit.h"

@implementation MarkKit

- (void)printMarkKit

{

    NSLog(@"Hello MarkKit!");

}

@end


7.    選擇Run Scheme如圖:



點擊Run,成功運行;至此成功生成framework。



8.    查看framework build路徑方式

點擊Xcode右上角Organizer,選擇Projects選項卡如圖,點擊紅色標註裏的箭頭可以進入bulid路徑,





紅色標註的文件夾就是生成的framework。(文件夾下en.lproj和Info.plist都可以直接刪除,只需保留Headers文件夾和MarkiOSKit就可以了)

讓我們來測試一下,把這個文件夾添加到一個新的工程裏面。

添加代碼如下:



運行結果如下:




小編的補充:

本文主要是完成在XCODE4.6環境下,實現自定義框架。

自定義FrameWork就是通常說的庫,可以共享各種代碼和文件資源在裏面,初步斷定,一個framework再內存中只copy一次,也只擁有一個bundle。

優勢

第一,充分體現了模塊化設計的可擴展性和高內聚行

第二,framework 能夠進行版本管理,這使得 framework 能不斷更新並向後兼容;

第三,在同一時間,即使有多個應用程序使用同一 framework,但在內存中只有一份 framework 只讀資源的拷貝,這減少了對內存的佔用



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章