iOS, как заменить значок моего приложения в файле .app и уйти в отставку? - PullRequest
0 голосов
/ 23 октября 2018

Теперь у меня есть проект, который должен распространяться в 20 или более файлах 'ipa' в соответствии с внутренним распространением.Однако эти файлы полностью идентичны.Они разделены на разные файлы "ipa" разными значками и разными именами.Это мой вопрос, что я переименую файл значка в то же имя, что и мой файл значка в проекте XCode.И создайте его как файл .app, подайте в отставку после того, как я заменил различные значки в этом файле .app.Но это не работает.И что же мне делать?Я не хочу архивировать его более 20 раз, чтобы получить файлы ipa !! Это больно и скучно.

detail: во-первых, я использую команду xcodebuild для получения файла .app.
xcodebuild -workspace ${projectDir}/xxxxx.xcworkspace -scheme ${schemeName} -configuration Release clean -sdk iphoneos build CODE_SIGN_IDENTITY="${CODE_SIGN_IDENTITY}" PROVISIONING_PROFILE="${PROVISIONING_PROFILE}" SYMROOT="${projectDir}/build" Перед тем, как сделать это, я установил this в Xcode.Затем я открываю файл приложения и нахожу this .
Поэтому я решил изменить значок, чтобы мне не приходилось много раз переархивировать.Поэтому я заменил это на else icon .У них одинаковые имена.После этого я оставляю этот файл .app в соответствии с этой командой
xattr -cr $ipaPath/Payload/myproject.app codesign -f -s "xxxxxx" --entitlements $Entitlements $ipaPath/Payload/myproject.app.И я загружаю на платформу и скачиваю оттуда.Значок не был изменен (это первый один , а не второй ).Так почему же это случилось?и как я мог это решить.Кстати, я также переписываю файл plist, чтобы изменить DisplayName, он работает.

Ответы [ 2 ]

0 голосов
/ 24 октября 2018

Вам придется пересобрать приложение, чтобы иконки были в комплекте;повторной подписи недостаточно.

Я бы предложил следующее:

  1. В каталоге ресурсов вы создаете активы значка приложения для каждой цели и присваиваете им индивидуальное имя, например AppIconTaget1 и т. Д.
  2. В настройках сборки каждой цели вы создаете переменную с именем, например, TargetAppIconName и присваиваете ее соответственно AppIconTarget1 и т. Д. (Так во второмtarget, TargetAppIconName == AppIconTarget2)
  3. В файле Info.plist вы присваиваете запись CFBundleIconName значению этой переменной, например, $(TargetAppIconName)

Затем, без какого-либо предварительного / последующего копирования и т. Д., Вы должны получить отдельные значки после создания каждой цели.

0 голосов
/ 23 октября 2018

Похоже, что вы должны архивировать 20 раз в вашем проекте => Общие => ЦЕЛИ, вы можете создать 20 целей, установить различные значки и разные имена.затем заархивируйте их с помощью автоматического скрипта (используйте xcodebuild)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...