→ 위젯의 layout, 업데이트 빈도, AppWidgetProvider class와 같은 위젯의 메타데이터를 설명한다.
xml에 정의된다.
→ 위젯과 상호작용 할 수 있는 기본 메서드를 정의 한다. 이를 통해 위젯 관련 broadcast를 수신하다.
<appwidget-provider xmlns:android="<http://schemas.android.com/apk/res/android>"
android:minWidth="40dp"
android:minHeight="40dp"
android:targetCellWidth="1"
android:targetCellHeight="1"
android:maxResizeWidth="250dp"
android:maxResizeHeight="120dp"
android:updatePeriodMillis="86400000"
android:description="@string/example_appwidget_description"
android:previewLayout="@layout/example_appwidget_preview"
android:initialLayout="@layout/example_loading_appwidget"
android:configure="com.example.android.ExampleAppWidgetConfigurationActivity"
android:resizeMode="horizontal|vertical"
android:widgetCategory="home_screen"
android:widgetFeatures="reconfigurable|configuration_optional">
</appwidget-provider>
→ Android 12부터 targetCellWidth, targetCellHeight 속성은 Grid Cell 측면에서 위젯의 기본 크기를 지정한다. Android 11 이하에선 무시되며 홈 화면에서 Grid 기반 Layout을 지원하지않으면 무시 할 수 있다.
→ minWidth, minHeight 속성은 위젯의 기본 크기를 dp로 지정한다. 위젯의 최소 width, height값이 셀의 크기와 일치하지않으면 가장 가까운 셀 크기로 반올림된다.
→ 4개 속성 모두 지정하는 것이 좋다.
→ 위젯의 최소, 최대 크기를 지정한다.