這兩天得空,學習了下shell腳本,也參照了一些網上的經驗,添加了兩個自定義Run Script Phase。具體怎么新增Run Script Phase就不贅述了,在Build Phases里找吧。
1.每次構建的時候build號自增?
#!/bin/bash
buildNumber=$(/usr/libexec/PlistBuddy -c"Print CFBundleVersion""$INFOPLIST_FILE")
buildNumber=$(($buildNumber +1))
/usr/libexec/PlistBuddy -c"Set :CFBundleVersion $buildNumber""$INFOPLIST_FILE"
2.根據bundleID不同,設置不同的jpush appkey
#!/bin/bash
bundleID=${PRODUCT_BUNDLE_IDENTIFIER}
id="com.zhoumoquan.zhoumoquan"
if ["$bundleID"="$id"]; then
cp zmq/PushConfig_AppStore.plist zmq/PushConfig.plist
else
cp zmq/PushConfig_Enterprise.plist zmq/PushConfig.plist
fi
注意:我開始是用
bundleID=$(/usr/libexec/PlistBuddy -c"Print CFBundleIdentifier""$INFOPLIST_FILE")
取到bundle,然后判斷是否相等,可是怎么判斷怎么都不為真。打開Info.plist看了看,CFBundleIdentifier的值是$(PRODUCT_BUNDLE_IDENTIFIER),大概取出來的bundleID是替換xcode環境變量之前的。改成
bundleID=${PRODUCT_BUNDLE_IDENTIFIER}
果然就正常了。