Ответ
Appcompat (AppCompat) библиотеки обеспечивают обратную совместимость новых фич и стилей Material Design на старых версиях Android.
Основные функции:
- Поддержка Material Design на API < 21 (например,
Theme.AppCompat). - Единообразные стили для
Toolbar,AlertDialog,Buttonи других виджетов. - Включение новых API (например,
ContextCompat,ViewCompat) для работы с permissions, анимациями и др.
Пример:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Кастомизация темы -->
</style>
class MainActivity : AppCompatActivity() {
// Используется вместо Activity для совместимости
}
Без AppCompat пришлось бы писать отдельные реализации под разные версии Android.