Удалить локализацию приложения iOS - PullRequest
15 голосов
/ 18 июля 2011

В Bombr 1.2 Я добавил половинную французскую локализацию, со временем добавив больше строк для локализации. Я решил отказаться от французской локализации. В Bombr 1.2.1 я удалил ссылку на fr.lproj / Localizable.strings из проекта Xcode, но файл все еще существует. Теперь, когда 1.2.1 есть в магазине приложений, он все еще говорит, что французский является поддерживаемым языком.

Будет ли удаление папки fr.lproj и повторная отправка правильно отображать поддерживаемые языки (это моя догадка), или возможно, что iTunes Connect не позволит вам отказаться от поддержки языка?

(Я взял год французского в старших классах для развлечения, но этого не хватило, чтобы перевести собственное приложение.)

Ответы [ 5 ]

13 голосов
/ 09 апреля 2013

Если вы хотите удалить локализацию метаданных приложения, в iTunesConnect есть меню удаления

enter image description here

10 голосов
/ 03 декабря 2014

Опираясь на ответ, данный @vanya, выберите свой проект из списка и удалите язык в разделе "локализация".

XCode

6 голосов
/ 19 июля 2011

попробуйте взглянуть на info.plist, который определяет локализации, и я думаю, что некоторая работа в iTunesConnect также должна быть выполнена, но до утверждения приложения

4 голосов
/ 28 марта 2012

Чтобы удалить локализацию из Xcode (я использую 4.2 на Snow Leopard), нажмите на файл / папку на боковой панели «Localizable.strings» и откройте инспектор файлов (сочетание клавиш cmd-opt-1 или View> Утилиты> Показать инспектор файлов в строке меню). Вы увидите панель локализации со списком ваших локализаций. Выберите тот, который хотите удалить, и нажмите знак «минус», чтобы удалить его.

0 голосов
/ 22 ноября 2018

Итак, я получил ответ на этот вопрос, но с некоторыми конкретными критериями:

  • Я хочу удалить базовый язык разработки (английский)
  • Я хочу сохранить локализованный язык (французский)

Ни один из приведенных выше ответов не сработал, и я не смог найти ничего лучшего в переполнении стека. В конце концов я нашел этот драгоценный камень: XCode: Удалить локализации при сборке .

Я занимаюсь разработкой на английском языке, поэтому вся база приложения на английском языке. Затем я перевел его на финский для первого выпуска, но намеревался выпустить только финский контент, а не английский.

Настройка небольшого сценария на заключительном этапе сборки творит чудеса для удаления нежелательных локализаций:

#Remove english
rm -r "${TARGET_BUILD_DIR}/${PRODUCT_NAME}.app/en.lproj"
# Remove base (iOS 9)
rm -r "${TARGET_BUILD_DIR}/${PRODUCT_NAME}.app/Base.lproj"

Тогда у меня возникли некоторые ошибки во время выполнения, потому что некоторые файлы раскадровки были локализованы и расположены в папке Base.lproj. Я работал над этим, делая следующее:

  • Отменить локализацию этих раскадровок (отключить все языки) и затем «Переместить в корзину»
  • Перетянул раскадровки из корзины обратно в проект. (По существу, перемещение раскадровки из папки Base.lproj, которую должен удалить скрипт, в папку проекта.)

Примечание: ни один из этих раскадровок фактически не был локализован (все файлы .strings были пустыми). Все переводы были правильно установлены в коде с использованием NSLocalizedString.

...