2016-11-17 76 views
-1

我是否有能力在bash中啓用功能推送通知? 我的問題是我的版本使用CI。 如果我使用供應構建調試版本,該版本包含通配符* 而且我將啓用功能中的推送通知調試構建將不會編譯。由於通配符提供不支持推送通知Xcode 8從終端添加功能

但我需要它爲版本建立與正常規定。在這種情況下,我需要在功能中啓用推送通知。 我想用腳本啓用它,如果它是真實的,僅用於發佈。

如果有人知道另一種方法會很高興聽到。 將不勝感激的任何幫助。 謝謝

回答

1

我寫的啓用Cordova項目中的推送通知的腳本。

您需要修改它才能將DevelopmentTeam設置爲正確的值。

鉤/ before_compile/capabilities.sh

#!/bin/sh 

# Abort on Error 
set -e 

APP_NAME=$(sed -e 's/xmlns.*/>/g' config.xml | xmllint --xpath '/widget/name/text()' -) 
PROJECT=`find platforms/ios/${APP_NAME} -name project.pbxproj` 

# Exit if not required 
grep 'TargetAttributes' ${PROJECT} > /dev/null && exit 

# Backup 
set -x 
cp ${PROJECT} ${PROJECT}.orig 

# Get ID 
ID=`grep -A 1 'Begin PBXNativeTarget section' ${PROJECT} | tail -n 1 | cut -d ' ' -f 1 | tr -d '\t'` 

# Inject 
sed -i '' -e "/LastUpgradeCheck.*$/a\\ 
TargetAttributes = {\\ 
${ID} = {\\ 
DevelopmentTeam = ABCD1234YZ;\\ 
SystemCapabilities = {\\ 
com.apple.Push = {\\ 
enabled = 1;\\ 
};\\ 
};\\ 
};\\ 
};" ${PROJECT} 

# Compare 
diff ${PROJECT}.orig ${PROJECT}