動態鏈接庫的使用(一):創建

轉載請註明出處:http://blog.csdn.net/number_five/article/details/46561089

動態庫學習流程:

 

1.創建

1.1動態共享庫創建:

1.2接口準備(有xib和無xib)

 

2.打開

2.1主程序的創建:

2.2打開方式:

2.3調用入口接口:

 

3.數據共享方式

3.1本地存儲:

3.2消息中心

 

      在蘋果的WWDC2014上開放了動態庫, 用動態庫來更新程序是一個很好的選擇 ,也很有意思 , 讓我們來學習一下動態庫吧 .

準備: Xcode 6 以上

 

1.1 動態共享庫的創建

打開xcode 創建一個Cocoa Touch Framework ,如圖1.1所示

 

   

圖1.1 創建Cocoa Touch Framework

 

我創建的名字叫LinkPhone ,如圖1.2 所示

圖1.2 創建LinkPhone

 

然而我劃橫線的類並沒有什麼卵用, 對, 然並卵 , 可以刪掉也可以不刪, 隨意了, 我刪掉了.

 

然後創建一個繼承與NSObject類的類 , 我叫Interface ,作爲接口類,如圖1.3 創建Interface

圖1.3 創建Interface接口類

 

 

然後點擊工程-->Target-->Build Phases-->Headers   將Projict裏面我們要暴露出來的作爲接口使用的頭文件拖到Public下, 這樣主程序就能訪問到該頭文件,如圖1.4所示


圖1.4 暴露接口

 

然後點擊 “ +” 號按鈕 , 創建Aggregate的target ,如圖1.5


圖1.5 創建共享庫

 

 

名字叫做LinkPhone1 , 然後再Target-->LinkPhone1-->Build Phases -->Target Dependencies 點擊“+” 把真正的動態庫添加進去如圖1.6所示



圖1.6

 

然後在LinkPhone1-->Build phases 下點擊加號,添加Script Phase 如圖1.7所示


圖1.7

 

 

然後在LinkPhone1-->Build Phases-->Run Script 下的黑色區域, 填寫腳本代碼

如圖1.8所示


圖1.8

腳本內容爲:

 

#Sets the target folders and the final framework product.

FMK_NAME=${PROJECT_NAME}

 

#Install dir will be the final output to the framework.

#The following line create it in the root folder of the current project.

INSTALL_DIR=${SRCROOT}/Products/${FMK_NAME}.framework

 

#Working dir will be deleted after the framework creation.

WRK_DIR=build

DEVICE_DIR=${WRK_DIR}/Release-iphoneos/${FMK_NAME}.framework

SIMULATOR_DIR=${WRK_DIR}/Release-iphonesimulator/${FMK_NAME}.framework

 

#-configuration ${CONFIGURATION}

#Clean and Building both architectures.

xcodebuild-configuration "Release" -target "${FMK_NAME}" -sdkiphoneos clean build

xcodebuild-configuration "Release" -target "${FMK_NAME}" -sdkiphonesimulator clean build

 

#Cleaning the oldest.

if[ -d "${INSTALL_DIR}" ]

then

rm-rf "${INSTALL_DIR}"

fi

 

mkdir-p "${INSTALL_DIR}"

 

cp-R "${DEVICE_DIR}/" "${INSTALL_DIR}/"

 

#Uses the Lipo Tool to merge both binary files (i386 + armv6/armv7) into oneUniversal final product.

lipo-create "${DEVICE_DIR}/${FMK_NAME}""${SIMULATOR_DIR}/${FMK_NAME}" -output"${INSTALL_DIR}/${FMK_NAME}"

 

rm-r "${WRK_DIR}"

腳本的主要功能是:

1.分別編譯生成真機和模擬器使用的framework; 2.使用lipo命令將其合併成一個通用framework; 3.最後將生成的通用framework放置在工程根目錄下新建的Products目錄下。

如果一切順利,對LinkPhone1執行run操作以後就能生成一個如圖1.9所示的通用framework文件了:



圖1.9

 

 

1.2 接口準備

接口分爲兩類 : 1個是準備跳轉不帶xib文件的視圖控制器, 另一個是跳轉有xib的視圖控制器

 

無xib:

1.  創建一個視圖控制器,我的名字叫做FirstViewController如圖2.0所示



圖2.0

 

2.在Interface.h接口類中 , 寫入口方法:

-(void)SetRootViewController:(UIViewController *)mainCon如圖2.1所示



圖2.1

 

在Interface.m中實現, 如圖2.2所示



圖2.2

 

 

有xib:

創建一個帶有xib的視圖控制器, 我就做XIBViewController,如圖2.3所示



圖2.3

 

在Interface.h中寫:

-  -(void)setXibRootViewController:(UIViewController*)mainCon andBundle:(NSBundle *)bundle;如圖2.4所示



圖2.4

 

-   在Interface.m中寫,如圖2.5:



圖2.5

動態共享庫也就是鏈接庫就算徹底創建完畢了, 下一步我們就要創建主程序並且打開共享庫 請看 動態鏈接庫的使用(二):打開

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