iOS xcode jenkinsテストパッケージには、自増バージョン番号とタイムスタンプが表示されます.


テスト部門は、パッケージがテストの手にあるバージョンの違いを区別するために、自増バージョン番号またはタイムスタンプを表示することを要求し、指定されたパッケージバージョンの問題を特定します.
Xcodeエンジニアリングで対応するTargetを選択し、Build Phasesで「New Run Script Phases」をクリックします.次のウィンドウに次のようなスクリプトを書き込みます.
説明:workspace_dirはworkspaceプロジェクト、project_dirはプロジェクトプロジェクトです.
buildNumber=$(/usr/libexec/PlistBuddy -c "Print :CFBundleVersion" "${WORKSPACE_DIR}/${INFOPLIST_FILE}")  
shortVersion=$(/usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" "${WORKSPACE_DIR}/${INFOPLIST_FILE}")  
  
buildNumber=`date +"%m%d"`  
buildNumber="$shortVersion.$buildNumber"  
  
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${WORKSPACE_DIR}/${INFOPLIST_FILE}"

バージョン番号にタイムスタンプを付けて付加価値を追加します.
この方法は元の応用に深く介入し,システムplistのCFBundleVersion値を修正した.元のアプリケーションコードに影響しないようにinfo.plistファイルは、新しいカスタム値CFBundelInfoDictionaryVersionを追加し、その操作を行います.
buildNumber=`date +"%Y%m%d%H%M"`

/usr/libexec/PlistBuddy -c "Set :CFBundleInfoDictionaryVersion $buildNumber" "${WORKSPACE_DIR}/${INFOPLIST_FILE}"

バージョンに部分コードを表示
        cell1.mainString = @" ";
        NSString * version1 = [NSString stringWithFormat:@"%@",[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleInfoDictionaryVersion"]];
        cell1.detailString = version1;
        return cell1;

説明:date+“%Y%m%d%H%M%S”年月日時分秒形式.
plistファイルパスの書き方は、xcodeグローバル変数定義に関連します.
$(SRCROOT)/YouPinHui/SupportFile/Info.plist
${WORKSPACE_DIR}/${INFOPLIST_FILE}
Release(Archiveなど)のときだけBuildを更新したい場合は、以下の判断を加えることができます.
  • if [ "${CONFIGURATION}" = "Release" ]; then  
  •   
  • fi