Измените безопасность транспорта приложений с помощью PlistBuddy через новую систему сборки - PullRequest
1 голос
/ 01 августа 2020

У меня есть сценарий, добавленный в качестве сценария выполнения на этапах сборки, который пытается изменить конфигурацию безопасности транспорта приложений. Скрипт не работает с системой новой сборки Xcode. В частности, когда я запускал приложение в Simulator (DevelopmentDebug), у меня все еще возникала ошибка ATS.

Вы когда-нибудь сталкивались с такой же проблемой?

echo "Run Application Transport Security script for ${CONFIGURATION}"

if [[ ${CONFIGURATION} == "DevelopmentDebug" || ${CONFIGURATION} == "DevelopmentRelease" ]]; then
    # Delete any existing NSAppTransportSecurity configurations
    /usr/libexec/PlistBuddy -c "Delete :NSAppTransportSecurity" "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"

    # Add the NSAppTransportSecurity dictionary again
    /usr/libexec/PlistBuddy -c "Add :NSAppTransportSecurity dict" "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"

    # Add NSAllowsArbitraryLoads and set it to true
    /usr/libexec/PlistBuddy -c "Add :NSAppTransportSecurity:NSAllowsArbitraryLoads bool true" "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"
    # Add NSAllowsArbitraryLoadsInWebContent and set it to true
    /usr/libexec/PlistBuddy -c "Add :NSAppTransportSecurity:NSAllowsArbitraryLoadsInWebContent bool true" "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"
fi

# Print Info.plist result
/usr/libexec/PlistBuddy -c "Print" "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"
...