3.0にアップグレードした後Android Studioはベクタードローアブルの長いパスについて不満を感じ始めました。
警告は言う:
非常に長いベクトルパス(7958文字)。これはパフォーマンスに悪影響を及ぼします。精度の低下、細部の削除、またはベクトルのラスタライズを検討してください。 less ...(⌘F1)長いベクトルパスを使用するとパフォーマンスが低下します。 pathDataを短くするには、いくつかの方法があります。*精度を低くする*細かい詳細を削除する* Android Studioベクトル変換ツールを使用する*画像をラスタライズする(PNGに変換する))
ドキュメント https://developer.Android.com/guide/topics/graphics/vector-drawable-resources.html は、アプリでベクタードローアブルを使用する方法を示しており、pngなどよりも推奨しています。
私は両方ともAndroid Studio Vector Conversion Toolと、SVGをベクタードローアブルに変換するこの優れたサービスを使用しています。 http://inloop.github.io/svg2Android/
ベクターのドローアブルの複雑さを軽減するために他に役立つサービスは他にありますか?ベクタードローアブルの「高度な」使用に関するガイドラインはどこにありますか?
avocado
を使用してベクタードローアブルを最適化してみてください。パスの複雑さを軽減するのに役立ちます。
svg2Android
を使用する前に追加できる追加のステップがあります。これは svgo を介して実行されます
私が使用するパイプラインの例は次のようになります(Webツールの代わりに svg2vectordrawable を使用していることに注意してください)
~$ svgo image.svg --config=config -o image.svg.optimized
~$ s2v "image.svg.optimized image.xml
私のconfig
ファイルは次のようになります(必要に応じて、このファイルをいじってみてください)。
"plugins": [
{
"convertPathData": {
"leadingZero": false,
"floatPrecision": 2
}
}
]
Precision
を減らして このツール を使用してみてください。