发出此警告的主要动机是使VectorDrawables向后兼容,从而使其在所有设备上看起来都一样。通过使用“ Compat”,您将确保使用矢量资产不会使应用程序在API 21以下的设备上崩溃。简而言之,使用drawableEndCompat将允许任何人使用与drawableEnd旧API相同的功能。现在,您会想到我应该选择什么:如果使用drawableEndCompat,它将在每个设备中按预期工作。drawableEnd据我所知,API大于21的设备会在内部对其进行正常包装。如果选择使用drawableEnd,它将仅适用于API 21及更高版本。
如果您认为我不需要任何Compat支持:可以将您的App最低SDK从当前值增加到至少21。然后您可以drawableEnd和平使用。另外,您可以选择为不同的API创建不同的布局文件,在该布局文件中,API 21以下使用的布局文件drawableEndCompat以及API 21以上使用的布局文件drawableEnd。我认为,您还可以检查是否可以在同一位置使用两个属性。我觉得他们也应该一起工作。