Xcode11 shell腳本獲取不到版本號問題

在Xcode 11之前 ,我使用了一個腳本來讀取當(dāng)前應(yīng)用程序版本(適用于AppStore)并幫助我更改LaunchScreen,動態(tài)獲取版本號:

#用腳本獲取info.plist里面的版本字段
versionNumber=$(/usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" "./目錄/info.plist");
#我在LaunchScreen.storyboard里面拖了一個UILabel進(jìn)去,取名為AppVersion
sed -i bak -e "/userLabel=\"AppVersion\"/s/text=\"[^\"]*\"/text=\" $versionNumber\"/" ./目錄/LaunchScreen.storyboard;

但是在Xcode 11中 ,項目的構(gòu)建設(shè)置中有一個新的部分稱為Versioning
并且CFBundleShortVersionString自動更改為$(MARKETING_VERSION) 。 Xcode會自動處理該問題, 我不想手動將其更改為靜態(tài)數(shù)字 ,而是讓Xcode進(jìn)行處理。
經(jīng)過一番探索發(fā)現(xiàn),可以像使用其他任何項目變量一樣使用它:

sourceFilePath="$PROJECT_DIR/$PROJECT_NAME/App/Base.lproj/LaunchScreen.storyboard"
versionNumber="$MARKETING_VERSION"
buildNumber="$CURRENT_PROJECT_VERSION"

sed -i .bak -e "/userLabel=\"APP_VERSION_LABEL\"/s/text=\"[^\"]*\"/text=\"v$versionNumber\"/" "$PROJECT_DIR/$PROJECT_NAME/App/Base.lproj/LaunchScreen.storyboard"
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容