iOS-打包ipa腳本

執行說明放在項目更目錄下執行

sh pkg.sh(文件名本身命名)

腳本代碼

#!/bin/bash
    #自動化編譯打包腳本
    #相關設置 1.PROJECT->Info->Configuations 點擊加號添加本身須要的環境名
    # 2.PROJECT->Build Settings->Preprocessor Macros 設置對應環境的鍵值
    #Config  表示服務器環境 Dubug:開發 Prm:預生產 Release:生產
    # `pwd` 表示當前路徑
    #Project_Name 根據工程的名字做修改

    # 獲取當前目錄
    currentDir=`pwd`

    #用/分割路徑
    OLD_IFS="$IFS"
    IFS="/"
    dirNames=($currentDir)
    IFS="$OLD_IFS"

    #獲取數組長度
    length=${#dirNames[@]}
    echo "分割結果:"${dirNames[@]}
    projectName=${dirNames[$length-1]}
    echo "項目名稱:"$projectName

    scheme=$projectName
    echo "ppp-"$scheme
    #選擇環境
    choose=0;
    if [[ $1 == 'Debug' ]]; then
    	choose=1
    fi

    if [[ $1 == 'Qa' ]]; then
    	choose=1
    fi

    #獲取命令行參數
    # $0 是指令文件
    # $1 第一個參數
    # $2 第二個參數,依此類推

    echo '環境:'$1
    if [[ $choose == 0 ]]; then
    	echo '注意選擇環境,用法以下:'
    	echo 'sh package.sh Debug|Qa'
    	echo ''
    	exit
    fi
    echo '開始打包。。。'

    pkg_plist="pkg.plist"
    if [ ! -d $pkg_plist ]
    then
        /usr/libexec/PlistBuddy -c "print" pkg.plist
        /usr/libexec/PlistBuddy -c "Add :bundle-identifier string ${projectName}" $pkg_plist
        /usr/libexec/PlistBuddy -c "Add :bundle-version string 1.0.0" $pkg_plist
        /usr/libexec/PlistBuddy -c "Add :kind string software" $pkg_plist
        /usr/libexec/PlistBuddy -c "Add :title string ${projectName}" $pkg_plist
    fi

    #編譯 若是是workspace把-project替換成-workspace便可參數改成$projectName.xcworkspace
    config=$1 #項目模式Debug/Release等
    archivePath= ./$projectName
    xcodebuild archive \
    -project $projectName.xcodeproj \
    -archivePath $projectName \
    -scheme $projectName \
    -configuration $config

    #打包
    exportPath="./ipa/" #archive導出目錄(ipa包)
    if [ ! -d $exportPath ]
    then
      mkdir $exportPath
    fi
    xcodebuild -exportArchive -archivePath ./$projectName.xcarchive \
    -exportPath $exportPath \
    -exportOptionsPlist ./$pkg_plist
相關文章
相關標籤/搜索