❗️ Тебе не нужно делать эту картинку векторной
Векторные изображения — мощный инструмент, но не панацея. В Android для этого есть VectorDrawable — упрощённая версия SVG, адаптированная под мобильные устройства.
За годы разработки я выработал несколько простых правил 👇
❗️ Используй векторную графику только для изображений из простых геометрических фигур
🤔 Не бойся растровых форматов — PNG, JPG или WEBP подойдут лучше, если картинка сложная или с эффектами
⚙️ В Jetpack Compose удобно описывать вектор прямо в коде (ImageVector.Builder)
🖌 Если дизайнер использует стандартные иконки — бери их из Compose Icons или добавляй через Android Studio → Vector Asset
Когда НЕ стоит использовать вектор
❌ Фото, сложные градиенты, тени и эффекты — вектор здесь проигрывает по весу и скорости (в отдельных случаях в Android может помочь ShapeDrawable)
❌ VectorDrawable не поддерживает все SVG-фичи (маски, фильтры, clip-path)
❌ На старых устройствах векторы могут грузить CPU (особенно до Android 5.0)
Пример: иконка с градиентом → 10 KB PNG против 120 KB VectorDrawable, и ещё тормозит при анимации.
Оптимизация
✅ Вектор отлично подходит для иконок с простой геометрией
✅ Для детализированных изображений — WebP (lossless) даст меньше веса и быструю загрузку. Можно конвертировать JPG или PNG в WebP в Android Studio
✅ Если ресурс редко используется — загружай лениво через Coil или Glide, а не храни в APK. Позволит снизить размер APK и подменять его может быть проще
#оптимизация
Post #9649
6.32K
- 👍 30
- 🤔 10
- ❤ 5