iOS—生成framework的shell脚本,生成的SDK可以嵌到项目里运行,编译发布


声明:本文转载自https://my.oschina.net/ArtemisFang/blog/1588607,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

set -e

pod install
pod update

rm -fr build
mkdir -p build/Output

xcodebuild \
  -workspace "xxxx(替换SDK的名字).xcworkspace" \
  -scheme "xxxx(替换SDK的名字)" \
  -derivedDataPath build \
  -arch armv7 -arch armv7s -arch arm64 \
  -sdk iphoneos \
  ONLY_ACTIVE_ARCH=NO \
  -configuration Release \
  -IDEBuildOperationMaxNumberOfConcurrentCompileTasks=4 \
  OTHER_CFLAGS="-fembed-bitcode" \
  build \
  CODE_SIGN_IDENTITY="" \
  CODE_SIGNING_REQUIRED=NO

xcodebuild \
  -workspace "xxxx(替换SDK的名字).xcworkspace" \
  -scheme "xxxx(替换SDK的名字)" \
  -derivedDataPath build \
  -sdk iphonesimulator \
  -destination 'platform=iOS Simulator,name=iPhone 6' \
  ONLY_ACTIVE_ARCH=NO \
  -configuration Release \
  -IDEBuildOperationMaxNumberOfConcurrentCompileTasks=4 \
  OTHER_CFLAGS="-fembed-bitcode" \
  build \
  CODE_SIGN_IDENTITY="" \
  CODE_SIGNING_REQUIRED=NO

rm -f build/Output/libactor.so


lipo -create "build/Build/Intermediates/xxxx(替换SDK的名字).build/Release-iphoneos/j2objc/Objects/libactor.so" "build/Build/Intermediates/xxxx(替换SDK的名字).build/Release-iphonesimulator/j2objc/Objects/libactor.so" -output build/Output/libactor.so

# Building Framework
# Copy base framework
rm -fr build/Output/xxxx(替换SDK的名字).framework
cp -a build/Build/Products/Release-iphoneos/xxxx(替换SDK的名字).framework build/Output/

# Merging binaries
lipo -create "build/Build/Products/Release-iphoneos/xxxx(替换SDK的名字).framework/xxxx(替换SDK的名字)" "build/Build/Products/Release-iphonesimulator/xxxx(替换SDK的名字).framework/xxxx(替换SDK的名字)" -output build/Output/xxxx(替换SDK的名字)_Lipo
rm -fr build/Output/xxxx(替换SDK的名字).framework/xxxx(替换SDK的名字)
mv build/Output/xxxx(替换SDK的名字)_Lipo build/Output/xxxx(替换SDK的名字).framework/xxxx(替换SDK的名字)
rm -fr build/Output/xxxx(替换SDK的名字).framework/Frameworks

# Merging swift docs
cp -a build/Build/Products/Release-iphonesimulator/xxxx(替换SDK的名字).framework/Modules/xxxx(替换SDK的名字).swiftmodule/* build/Output/xxxx(替换SDK的名字).framework/Modules/xxxx(替换SDK的名字).swiftmodule/

# Copying dSYM
cp -a build/Build/Products/Release-iphoneos/xxxx(替换SDK的名字).framework.dSYM/* build/Output/xxxx(替换SDK的名字).framework.dSYM/

# Compressing Framework
cd build/Output/
rm -f xxxx(替换SDK的名字).zip
zip -r xxxx(替换SDK的名字).zip xxxx(替换SDK的名字).framework xxxx(替换SDK的名字).framework.dSYM

本文发表于2017年12月12日 18:33
(c)注:本文转载自https://my.oschina.net/ArtemisFang/blog/1588607,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 2735 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1