ipa_resign 1.63 KB
#!/usr/bin/env bash

INSPECT_ONLY=0
if [[ "$1" == '-i' ]]; then
    INSPECT_ONLY=1
    shift
fi



if [[ ! ( # any of the following are not true
        # 1st arg is an existing regular file
        -f "$1" &&
        # ...and it has a .ipa extension
        "${1##*.}" == "ipa" &&
        ($INSPECT_ONLY == 1 || -n "$2")
        ) ]];
    then
        cat << EOF >&2
    Usage: $(basename "$0") Application.ipa channel Example:  $(basename "$0") ./xxx.ipa youyu
    Usage: $(basename "$0") Application.ipa -list

    Options:
      -list    resign list channel 
    注意:
        1 如果是-list 保证resign_list.txt 在根目录下
        2 更换Icon 请将png放在appIcon目录下
        3 更换其它资源请放到res中
EOF
    exit;
fi



## Exit on use of an uninitialized variable
set -o nounset
## Exit if any statement returns a non-true return value (non-zero)
set -o errexit
## Announce commands
#set -o xtrace
realpath(){
    echo "$(cd "$(dirname "$1")"; echo "$(pwd)/$(basename "$1")")";
}
resign(){
	echo "打包渠道: $2"
	SDK_HOME="$(realpath $2)"
	paramsfile="$(echo "$SDK_HOME""/params.txt")"
	#mobileprovision="$(cat $paramsfile |awk -F ',' '{print $1}')"
	mobileprovision="$(ls $2 | grep mobileprovision)"
	sign="$(cat $paramsfile |awk -F ',' '{print $1}')"

	#echo "描述文件: $(realpath $mobileprovision)"
	echo "描述文件: $SDK_HOME/$mobileprovision "
	echo "签名: $sign"
	echo "参数文件: $paramsfile"
	echo "渠道资源目录: $SDK_HOME"

	./ipa_sign "$1" "$SDK_HOME/$mobileprovision" "$sign" "$2"
}

if [[ "$2" == '-list' ]]; then
	while read line
	do
	    resign $1 $line
	done < ./resign_list.txt
	exit
fi

resign $1 $2