У меня есть проект с несколькими целями. Предположим, что цели называются Target-A, Target-B и т.д. Для каждой цели у меня есть другой каталог активов иконок приложений. Они называются AppIcon - A, AppIcon - B и продолжаются для всех целей. Я назначил соответствующие каталоги активов всем целевым объектам, но он показывает только значки для Target-A, когда я запускаю на устройстве/симуляторе. Для всех других целей он не устанавливает никаких значков и показывает значок значка IOS 7 по умолчанию. Пожалуйста, помогите!
Атрибут Catelog с несколькими целями
Ответ 1
При добавлении изображения значка приложения обратите внимание, добавляя значок приложения-1 для проверки цели, а затем выберите только тестовую цель, а не тестовую копию цели, равную цели тестовой копии.
Также добавьте строку для "файла значков" в обоих plist и укажите имена своих приложений.
Пожалуйста, проверьте следующие снимки экрана, вы получите некоторые идеи.
Ответ 2
Если вы используете POD в своем проекте, вам нужно отредактировать "Pods-resources.sh" и удалить команды "xcassets" (см. прикрепленное изображение).
Ответ 3
Самый простой способ для меня состоял в том, чтобы добавить несколько "иконки приложений" в один и тот же файл xcassets
. С помощью этой техники у меня не было проблем с Cocoapod:
- Откройте файл xcassets
- Щелкните правой кнопкой мыши на левом столбце
- Нажмите "Новый значок приложения"
Затем вы можете легко выбрать правильный "значок приложения" для каждой цели.
Ответ 4
Итак, я написал script, чтобы удалить все те строки, на которые указывает Lukapple. Вставьте код для запуска script в проект xcode после Target Dependencies.
echo "run script to remove Pods-resources.sh"
file_name="${PROJECT_DIR}/Pods/Target Support Files/Pods/Pods-resources.sh"
function remove_wrapper_extensions {cat "$1" | awk 'BEGIN { suppress_output = 0; } /^if \[\[ -n/ { suppress_output = 1; } (!suppress_output) { print $0; } /^fi$/ { suppress_output = 0; }' > "${1}.1"}
function remove_case_statement {cat "$1" | awk 'BEGIN { suppress_output = 0; } /\s*\*\.xcassets\)$/ { suppress_output = 1; } (!suppress_output) { print $0; } /;;/ && (suppress_output) { suppress_output = 0; }' > "${1}.2"}
remove_wrapper_extensions "$file_name"
remove_case_statement "${file_name}.1"
rm "${file_name}"
rm "${file_name}.1"
mv "${file_name}.1.2" "$file_name"
chmod +x "${file_name}"