iOS framework配置脚本

Posted mfmdaoyou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS framework配置脚本相关的知识,希望对你有一定的参考价值。

# Sets the target folders and the final framework product.

FMK_NAME=HovnVoipEngine

FMK_VERSION=1.0


# 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


# Building both architectures.

xcodebuild -configuration "Release" -target "${FMK_NAME}" -sdk iphoneos

xcodebuild -configuration "Release" -target "${FMK_NAME}" -sdk iphonesimulator


# Cleaning the oldest.

if [ -d "${INSTALL_DIR}" ]

then

rm -rf "${INSTALL_DIR}"

fi


# Creates and renews the final product folder.

mkdir -p "${INSTALL_DIR}"

mkdir -p "${INSTALL_DIR}/Versions"

mkdir -p "${INSTALL_DIR}/Versions/${FMK_VERSION}"

mkdir -p "${INSTALL_DIR}/Versions/${FMK_VERSION}/Resources"

mkdir -p "${INSTALL_DIR}/Versions/${FMK_VERSION}/Headers"


# Creates the internal links.

# It MUST uses relative path, otherwise will not work when the folder is copied/moved.

ln -s "${FMK_VERSION}" "${INSTALL_DIR}/Versions/Current"

ln -s "Versions/Current/Headers" "${INSTALL_DIR}/Headers"

ln -s "Versions/Current/Resources" "${INSTALL_DIR}/Resources"

ln -s "Versions/Current/${FMK_NAME}" "${INSTALL_DIR}/${FMK_NAME}"


# Copies the headers and resources files to the final product folder.

cp -R "${DEVICE_DIR}/Headers/" "${INSTALL_DIR}/Versions/${FMK_VERSION}/Headers/"

cp -R "${DEVICE_DIR}/" "${INSTALL_DIR}/Versions/${FMK_VERSION}/Resources/"


# Removes the binary and header from the resources folder.

rm -r "${INSTALL_DIR}/Versions/${FMK_VERSION}/Resources/Headers" "${INSTALL_DIR}/Versions/${FMK_VERSION}/Resources/${FMK_NAME}"


# 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}/Versions/${FMK_VERSION}/${FMK_NAME}"


rm -r "${WRK_DIR}"











以上是关于iOS framework配置脚本的主要内容,如果未能解决你的问题,请参考以下文章

iOS framework动态库重签名

iOS BMOB-登录注册手机验证码邮箱验证

为啥在使用 Flutter 模块构建 iOS 原生应用时修复“Frameworks/Flutter.framework: Permission denied”?

iOS制作Framework依赖第三方Framework

Swift iOS GoogleAPIClientForREST – Shell 脚本调用错误 GTMSessionFetcher.framework:没有这样的文件或目录

由移动端级联选择器所引发的对于数据结构的思考