Как уменьшить размер приложения с помощью прореживания приложения и объяснить различные способы уменьшения размера приложения
У меня есть.png изображения, имеющие 1,6 мб. Я использовал несколько классов с объемом памяти 17 МБ, но мой размер проекта примерно 40 МБ. Может ли кто-нибудь предложить лучшее решение для уменьшения размера приложения для загрузки в магазин приложений. Посоветуйте мне, как найти самый большой файл в моем целевом файле. (Я использовал ресурсы изображения, у меня нет неиспользованного кода).
2 ответа
Список техник, которые вам помогут:
Удалить неиспользуемый код
Обычно сторонние библиотеки содержат много неиспользуемого кода. Включите код, связанный только с функциями, используемыми в этом приложении. Если вы обнаружите какие-либо изображения, музыку, дополнительный контент, который не используется в приложении, следует удалить из проекта. Загрузка ресурсов по требованию
Если ваш проект включает в себя такие ресурсы, как обучающие видео или графические изображения, которые, как ожидается, понадобятся редко, рассмотрите возможность их переноса на веб-сервер и загрузите их по требованию. Сервис Amazon S3 или небольшой VPS на Linode, как правило, справляются с задачей. При использовании этого метода требуется осторожность, так как вы хотите избежать разочарований пользователя массовой загрузкой после установки.
Используйте узорные изображения
UIColor включает в себя фантастическую функцию для уменьшения необходимости включать большие текстурированные изображения в ваш проект. Пример этого показан выше, где вы хотите придать своему приложению стилизованный фон, хотя этот метод одинаково хорошо применим к небольшим областям, где вы хотите добавить текстуру в элемент управления UI. Просто установите цвет фона для нужного вида на узорчатый цвет, например так:
view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"pattern.png"]];
Теперь у представления будет текстурированный фон, который масштабируется и регулируется в соответствии с размером представления. Хорошим источником для текстур, которые хорошо подходят к плиткам, является проект Subtle Patterns.
Используйте растянутые изображения
UIImage включает эффективный метод создания изображений, которые масштабируются динамически с размером. Изображение настроено так, что средняя часть растягивается, сохраняя края неизменными. Это часто используется для таких вещей, как кнопки, где углы и боковые стороны стилизованы, но тело кнопки простое. Я также хорошо работаю для создания "запечатленного" эффекта в табличных представлениях (как в примере App Store выше). Здесь вместо создания изображения размером 320x48, представляющего фон ячейки, вы создаете крошечное изображение размером 1x3 с желаемыми цветами верхней, нижней и нижней частей тела. Это тогда назначено как ваш backgroundView, приводящий к показанному эффекту.
UIImage* template = [UIImage imageName:@"template.png"];
UIImage* stretched = [template resizableImageWithCapInsets:UIEdgeInsetsMake(1, 0, 1, 0)]
cell.backgroundView = [[UIImageView alloc] initWithImage:stretched];
Вам нужно использовать изображения активов в вашем приложении. Добавьте все изображения в файл Assets.xcassets.