[FAQ] Как удалить ненужную локализацию из iOS-приложения
Если вы хотите увидеть на нашем сайте ответы на интересующие вас вопросы обо всём, что связано с техникой, программами и сервисами Apple, iOS или Mac OS X, iTunes Store или App Store, задавайте их на форуме AppStudio. Ответы на самые интересные из них будут появляться в материалах данной рубрики. К нам поступил следующий вопрос:
Здравствуйте!
У меня необычный вопрос к вам) Можно ли как-нибудь выкинуть из приложения для iOS не нужные мне языки? Некоторые проги так переводят на русский, что ими пользоваться не хочется, потому что ни черта не понятно. И далеко не все шрифты адаптируются под кириллицу, из-за чего всё разъезжается и не умещается на своих местах.
Насколько я знаю, программы, которые качаются из App Store, подписываются эппловским сертификатом и поменять их содержимое невозможно. Локализаций это тоже касается?
Спасибо.
Здравствуйте!
Поддерживаем вас полностью. Про некоторые программы можно действительно сказать, что лучше бы их не пытались переводить. Если в результате русификации понятность интерфейса становится хуже, чем в английской локализации, то ценность такой русификации стремится к нулю.
К счастью, избавиться от кривых переводов программ можно. Вы правы в том, что программы из App Store защищаются от модификации цифровой подписью, и переподписать их без взлома этой цифровой подписи невозможно. Но цифровая подпись защищает файлы внутри программы от изменения, но не от удаления :)
План действий будет такой:
- найдите нужное вам iOS-приложение в iTunes или скачайте его из App Store на компьютер
- из списка приложений iTunes вытащите программу на рабочий стол
- поменяйте расширение с IPA на ZIP и распакуйте программу любым архиватором
- вы увидите примерно такую структуру файлов и папок (чего-то конкретно в вашем случае может не быть, но папка Payload присутствует всегда)
- если вы в Windows, то сам файл приложения, лежащий внутри папки Payload, будет восприниматься системой как папка. Если вы в OS X, в контекстном меню файла приложения нужно будет выбрать пункт «Показать содержимое пакета»
- из начинки файла программы нужно будет выкинуть папку ru.lproj
- после этого надо запаковать приложение обратно. Выделите все папки и файлы, которые были распакованы, и создайте из них ZIP-архив, сохранив их первоначальную структуру
- поменяйте расширение с ZIP на IPA
- по двойному клику откройте IPA в iTunes и согласитесь на перезапись старой версии программы новой
Останется залить обновлённый IPA-файл на устройство.
Минус всей вышеописанной процедуры в том, что после любого апдейта приложения вам придётся повторять её снова… если конечно разработчики случайно не подготовят нормальную локализацию :))