1. 程式人生 > >iOS SDK~ 打包framework、開發與除錯

iOS SDK~ 打包framework、開發與除錯

//聯絡人:石虎 QQ:1224614774 暱稱:嗡嘛呢叭咪哄

一、建立一個workspace專案

1.現在桌面建立資料夾 SHTestSDk

2.開啟Xcode,建立一個workspace 流程: Xcode---File---New---Workspace  快捷鍵 :command +N = 建立專案

3.把建立好的新增到 檔名為 SHTestSDK 裡面

如圖1:


圖2:


圖3:建立成功效果


二、建立SDK

1、開啟SHTestSDK.xcworkspace檔案,建立project

圖4:


圖5:


圖6:


圖7:


圖8:成功效果圖


三、建立Demo

圖9:


圖10:


圖11:

成功效果圖


四、SHTestDemo的關聯以及SDK的開發除錯

1.這裡建立一個SHView類,繼承於UIView,簡單的重寫了初始化方法,設定了顏色

圖12:


2.設定Build Setting引數 將Build Active  Architecture only設定為NO,

圖13:


3.設置Build Setting引數 在Architectures下增加armv7s

圖14:


4.設定Headers,將要公開的標頭檔案拖到Public下,要隱藏的放到Private或Project下,隱藏的標頭檔案不能被引用,效果圖:

圖15:


5.在SHTestSDK.h(必須是公開的,否則無法引用)中將所有要公開的.h引入



6.建立一個Aggregare

圖16:


圖17:


7.嵌入指令碼,選中剛剛建立的Aggregare,然後選中右側的Build Phases,點選左邊的+號,選擇New Run Script Phases

圖18:


圖19:


8.下面把這段指令碼複製進去(格式不要錯,格式錯編譯不通過)

# Sets the target folders and the final framework product.

# 如果工程名稱和FrameworkTarget名稱不一樣的話,要自定義FMKNAME

# 例如: FMK_NAME ="MyFramework"

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}" -sdk iphoneos clean build

xcodebuild -configuration "Release" -target"${FMK_NAME}" -sdk iphonesimulator 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 one Universal final product.

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

rm -r "${WRK_DIR}"

open "${INSTALL_DIR}"

圖20:效果圖:


9.最後編譯,command + B,編譯通過在finder中找到framework,拷貝出來

圖21:


圖22:效果圖


五、SHTestDemo與SHTestSDK的關聯

1.把打包好的framework拖到demo裡面

圖23:

2.使用SDK,執行demo

圖24:


圖25:效果圖:

注意:以上功能就是SDK 和 demo 相關聯好了.

六、SHTestSDK 除錯

1.修改下面SDK中的程式碼,執行demo就是修改後的效果,然後就可以愉快的在這個工程裡面開發除錯SDK了,如果我把MyView的顏色設定為yellow,再去執行demo,看一下效果

圖26:

謝謝!!!