AppWidgetProviderInfo
open class AppWidgetProviderInfo : Parcelable
kotlin.Any | |
↳ | android.appwidget.AppWidgetProviderInfo |
Describes the meta data for an installed AppWidget provider. The fields in this class correspond to the fields in the <appwidget-provider>
xml tag.
Summary
Constants | |
---|---|
static Int |
Widget is resizable in both the horizontal and vertical axes. |
static Int |
Widget is resizable in the horizontal axis only. |
static Int |
Widget is not resizable. |
static Int |
Widget is resizable in the vertical axis only. |
static Int |
Indicates that the widget can be displayed on the home screen. |
static Int |
Indicates that the widget can be displayed on the keyguard. |
static Int |
Indicates that the widget should never be shown on the keyguard. |
static Int |
Indicates that the widget can be displayed within a space reserved for the search box. |
static Int |
The widget provides a default configuration. |
static Int |
The widget is added directly by the app, and the host may hide this widget when providing the user with the list of available widgets to choose from. |
static Int |
The widget can be reconfigured anytime after it is bound by starting the |
Inherited constants | |
---|---|
Public constructors | |
---|---|
AppWidgetProviderInfo(in: Parcel!) Unflatten the AppWidgetProviderInfo from a parcel. |
Public methods | |
---|---|
open AppWidgetProviderInfo! |
clone() |
open Int | |
open ActivityInfo |
Returns the broadcast receiver that is providing this widget. |
UserHandle! |
Gets the user profile in which the provider resides. |
CharSequence? |
loadDescription(context: Context) Loads localized description for the app widget. |
Drawable! |
Loads the icon to display for this AppWidget in the AppWidget picker. |
String! |
loadLabel(packageManager: PackageManager!) Loads the localized label to display to the user in the AppWidget picker. |
Drawable! |
loadPreviewImage(context: Context, density: Int) Loads a preview of what the AppWidget will look like after it's configured. |
open String |
toString() |
open Unit |
writeToParcel(out: Parcel, flags: Int) |
Properties | |
---|---|
static Parcelable.Creator<AppWidgetProviderInfo!> |
Parcelable. |
Int |
The view id of the AppWidget subview which should be auto-advanced by the widget's host. |
ComponentName! |
The activity to launch that will configure the AppWidget. |
Int |
Resource id for the description of the AppWidget. |
Int |
Flags indicating the widget categories for which generated previews are available. |
Int |
The icon to display for this AppWidget in the AppWidget picker. |
Int |
The resource id of the initial layout for this AppWidget when it is displayed on keyguard. |
Int |
The resource id of the initial layout for this AppWidget. |
String! |
The label to display to the user in the AppWidget picker. |
Int |
Maximum height (in px) which the widget can be resized to. |
Int |
Maximum width (in px) which the widget can be resized to. |
Int |
The default height of the widget when added to a host, in px. |
Int |
Minimum height (in px) which the widget can be resized to. |
Int |
Minimum width (in px) which the widget can be resized to. |
Int |
The default width of the widget when added to a host, in px. |
Int |
A preview of what the AppWidget will look like after it's configured. |
Int |
The layout resource id of a preview of what the AppWidget will look like after it's configured. |
ComponentName! |
Identity of this AppWidget component. |
Int |
The rules by which a widget can be resized. |
Int |
The default height of a widget when added to a host, in units of launcher grid cells. |
Int |
The default width of a widget when added to a host, in units of launcher grid cells. |
Int |
How often, in milliseconds, that this AppWidget wants to be updated. |
Int |
Determines whether this widget can be displayed on the home screen, the keyguard, or both. |
Int |
Flags indicating various features supported by the widget. |
Constants
RESIZE_BOTH
static val RESIZE_BOTH: Int
Widget is resizable in both the horizontal and vertical axes.
Value: 3
RESIZE_HORIZONTAL
static val RESIZE_HORIZONTAL: Int
Widget is resizable in the horizontal axis only.
Value: 1
RESIZE_VERTICAL
static val RESIZE_VERTICAL: Int
Widget is resizable in the vertical axis only.
Value: 2
WIDGET_CATEGORY_HOME_SCREEN
static val WIDGET_CATEGORY_HOME_SCREEN: Int
Indicates that the widget can be displayed on the home screen. This is the default value.
Value: 1
WIDGET_CATEGORY_KEYGUARD
static val WIDGET_CATEGORY_KEYGUARD: Int
Indicates that the widget can be displayed on the keyguard.
Value: 2
WIDGET_CATEGORY_NOT_KEYGUARD
static val WIDGET_CATEGORY_NOT_KEYGUARD: Int
Indicates that the widget should never be shown on the keyguard.
Some keyguard style features may decide that WIDGET_CATEGORY_KEYGUARD
isn't required to be added by an app to show on the feature when chosen by a user. This category allows for a stronger statement about placement of the widget that, even in the above case, this widget should not be offered on the keyguard.
Setting this category doesn't change the behavior of AppWidgetManager queries, it is the responsibility of the widget surface to respect this value.
Value: 8
WIDGET_CATEGORY_SEARCHBOX
static val WIDGET_CATEGORY_SEARCHBOX: Int
Indicates that the widget can be displayed within a space reserved for the search box.
Value: 4
WIDGET_FEATURE_CONFIGURATION_OPTIONAL
static val WIDGET_FEATURE_CONFIGURATION_OPTIONAL: Int
The widget provides a default configuration. The host may choose not to launch the provided configuration activity.
Value: 4
See Also
WIDGET_FEATURE_HIDE_FROM_PICKER
static val WIDGET_FEATURE_HIDE_FROM_PICKER: Int
The widget is added directly by the app, and the host may hide this widget when providing the user with the list of available widgets to choose from.
Value: 2
WIDGET_FEATURE_RECONFIGURABLE
static val WIDGET_FEATURE_RECONFIGURABLE: Int
The widget can be reconfigured anytime after it is bound by starting the configure
activity.
Value: 1
See Also
Public constructors
AppWidgetProviderInfo
AppWidgetProviderInfo(in: Parcel!)
Unflatten the AppWidgetProviderInfo from a parcel.
Public methods
clone
open fun clone(): AppWidgetProviderInfo!
Return | |
---|---|
AppWidgetProviderInfo! |
a clone of this instance. |
Exceptions | |
---|---|
java.lang.CloneNotSupportedException |
if the object's class does not support the Cloneable interface. Subclasses that override the clone method can also throw this exception to indicate that an instance cannot be cloned. |
describeContents
open fun describeContents(): Int
Return | |
---|---|
Int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or android.os.Parcelable#CONTENTS_FILE_DESCRIPTOR |
getActivityInfo
open fun getActivityInfo(): ActivityInfo
Returns the broadcast receiver that is providing this widget.
Return | |
---|---|
ActivityInfo |
This value cannot be null . |
getProfile
fun getProfile(): UserHandle!
Gets the user profile in which the provider resides.
Return | |
---|---|
UserHandle! |
The hosting user profile. |
loadDescription
fun loadDescription(context: Context): CharSequence?
Loads localized description for the app widget.
Description is intended to be displayed in the UI of the widget picker.
Parameters | |
---|---|
context |
Context: Context for accessing resources. This value cannot be null . |
Return | |
---|---|
CharSequence? |
CharSequence for app widget description for the current locale. This value may be null . |
loadIcon
fun loadIcon(
context: Context,
density: Int
): Drawable!
Loads the icon to display for this AppWidget in the AppWidget picker. If not supplied in the xml, the application icon will be used. A client can optionally provide a desired density such as android.util.DisplayMetrics#DENSITY_LOW
android.util.DisplayMetrics#DENSITY_MEDIUM
, etc. If no density is provided, the density of the current display will be used.
The loaded icon corresponds to the android:icon
attribute in the <receiver>
element in the AndroidManifest.xml file.
Parameters | |
---|---|
context |
Context: Context for accessing resources. This value cannot be null . |
density |
Int: The optional desired density as per android.util.DisplayMetrics#densityDpi . |
Return | |
---|---|
Drawable! |
The provider icon. |
loadLabel
fun loadLabel(packageManager: PackageManager!): String!
Loads the localized label to display to the user in the AppWidget picker.
Parameters | |
---|---|
packageManager |
PackageManager!: Package manager instance for loading resources. |
Return | |
---|---|
String! |
The label for the current locale. |
loadPreviewImage
fun loadPreviewImage(
context: Context,
density: Int
): Drawable!
Loads a preview of what the AppWidget will look like after it's configured. A client can optionally provide a desired density such as android.util.DisplayMetrics#DENSITY_LOW
android.util.DisplayMetrics#DENSITY_MEDIUM
, etc. If no density is provided, the density of the current display will be used.
The loaded image corresponds to the android:previewImage
attribute in the <receiver>
element in the AndroidManifest.xml file.
Parameters | |
---|---|
context |
Context: Context for accessing resources. This value cannot be null . |
density |
Int: The optional desired density as per android.util.DisplayMetrics#densityDpi . |
Return | |
---|---|
Drawable! |
The widget preview image or null if preview image is not available. |
toString
open fun toString(): String
Return | |
---|---|
String |
a string representation of the object. |
writeToParcel
open fun writeToParcel(
out: Parcel,
flags: Int
): Unit
Parameters | |
---|---|
dest |
The Parcel in which the object should be written. This value cannot be null . |
flags |
Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE . Value is either 0 or a combination of android.os.Parcelable#PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |
Properties
CREATOR
static val CREATOR: Parcelable.Creator<AppWidgetProviderInfo!>
Parcelable.Creator that instantiates AppWidgetProviderInfo objects
autoAdvanceViewId
var autoAdvanceViewId: Int
The view id of the AppWidget subview which should be auto-advanced by the widget's host.
This field corresponds to the android:autoAdvanceViewId
attribute in the AppWidget meta-data file.
configure
var configure: ComponentName!
The activity to launch that will configure the AppWidget.
This class name of field corresponds to the android:configure
attribute in the AppWidget meta-data file. The package name always corresponds to the package containing the AppWidget provider.
descriptionRes
var descriptionRes: Int
Resource id for the description of the AppWidget.
This field corresponds to the android:description
attribute in the AppWidget meta-data file.
generatedPreviewCategories
var generatedPreviewCategories: Int
Flags indicating the widget categories for which generated previews are available. These correspond to the previews set by this provider with AppWidgetManager.setWidgetPreview
.
icon
var icon: Int
The icon to display for this AppWidget in the AppWidget picker. If not supplied in the xml, the application icon will be used.
This field corresponds to the android:icon
attribute in the <receiver>
element in the AndroidManifest.xml file.
initialKeyguardLayout
var initialKeyguardLayout: Int
The resource id of the initial layout for this AppWidget when it is displayed on keyguard. This parameter only needs to be provided if the widget can be displayed on the keyguard, see widgetCategory
.
This field corresponds to the android:initialKeyguardLayout
attribute in the AppWidget meta-data file.
initialLayout
var initialLayout: Int
The resource id of the initial layout for this AppWidget. This should be displayed until the RemoteViews for the AppWidget is available.
This field corresponds to the android:initialLayout
attribute in the AppWidget meta-data file.
label
varlabel: String!
Deprecated: Use loadLabel(android.content.pm.PackageManager)
.
The label to display to the user in the AppWidget picker.
maxResizeHeight
var maxResizeHeight: Int
Maximum height (in px) which the widget can be resized to. This field has no effect if it is smaller than minHeight or if vertical resizing isn't enabled (see resizeMode
).
This field corresponds to the android:maxResizeHeight
attribute in the AppWidget meta-data file.
maxResizeWidth
var maxResizeWidth: Int
Maximum width (in px) which the widget can be resized to. This field has no effect if it is smaller than minWidth or if horizontal resizing isn't enabled (see resizeMode
).
This field corresponds to the android:maxResizeWidth
attribute in the AppWidget meta-data file.
minHeight
var minHeight: Int
The default height of the widget when added to a host, in px. The widget will get at least this height, and will often be given more, depending on the host.
This field corresponds to the android:minHeight
attribute in the AppWidget meta-data file.
minResizeHeight
var minResizeHeight: Int
Minimum height (in px) which the widget can be resized to. This field has no effect if it is greater than minHeight or if vertical resizing isn't enabled (see resizeMode
).
This field corresponds to the android:minResizeHeight
attribute in the AppWidget meta-data file.
minResizeWidth
var minResizeWidth: Int
Minimum width (in px) which the widget can be resized to. This field has no effect if it is greater than minWidth or if horizontal resizing isn't enabled (see resizeMode
).
This field corresponds to the android:minResizeWidth
attribute in the AppWidget meta-data file.
minWidth
var minWidth: Int
The default width of the widget when added to a host, in px. The widget will get at least this width, and will often be given more, depending on the host.
This field corresponds to the android:minWidth
attribute in the AppWidget meta-data file.
previewImage
var previewImage: Int
A preview of what the AppWidget will look like after it's configured. If not supplied, the AppWidget's icon will be used.
This field corresponds to the android:previewImage
attribute in the AppWidget meta-data file.
previewLayout
var previewLayout: Int
The layout resource id of a preview of what the AppWidget will look like after it's configured.
Unlike previewImage, previewLayout can better showcase AppWidget in different locales, system themes, display sizes & density etc.
If supplied, this will take precedence over the previewImage on supported widget hosts. Otherwise, previewImage will be used.
This field corresponds to the android:previewLayout
attribute in the AppWidget meta-data file.
provider
var provider: ComponentName!
Identity of this AppWidget component. This component should be a , and it will be sent the AppWidget intents as described in the AppWidget package documentation
.
This field corresponds to the android:name
attribute in the <receiver>
element in the AndroidManifest.xml file.
resizeMode
var resizeMode: Int
The rules by which a widget can be resized. See RESIZE_NONE
, RESIZE_NONE
, RESIZE_HORIZONTAL
, RESIZE_VERTICAL
, RESIZE_BOTH
.
This field corresponds to the android:resizeMode
attribute in the AppWidget meta-data file.
Value is either 0
or a combination of android.appwidget.AppWidgetProviderInfo#RESIZE_HORIZONTAL
, and android.appwidget.AppWidgetProviderInfo#RESIZE_VERTICAL
targetCellHeight
var targetCellHeight: Int
The default height of a widget when added to a host, in units of launcher grid cells.
This field corresponds to the android:targetCellHeight
attribute in the AppWidget meta-data file.
targetCellWidth
var targetCellWidth: Int
The default width of a widget when added to a host, in units of launcher grid cells.
This field corresponds to the android:targetCellWidth
attribute in the AppWidget meta-data file.
updatePeriodMillis
var updatePeriodMillis: Int
How often, in milliseconds, that this AppWidget wants to be updated. The AppWidget manager may place a limit on how often a AppWidget is updated.
This field corresponds to the android:updatePeriodMillis
attribute in the AppWidget meta-data file.
Note: Updates requested with updatePeriodMillis
will not be delivered more than once every 30 minutes.
widgetCategory
var widgetCategory: Int
Determines whether this widget can be displayed on the home screen, the keyguard, or both. A widget which is displayed on both needs to ensure that it follows the design guidelines for both widget classes. This can be achieved by querying the AppWidget options in its widget provider's update method.
This field corresponds to the widgetCategory
attribute in the AppWidget meta-data file.
Value is either 0
or a combination of android.appwidget.AppWidgetProviderInfo#WIDGET_CATEGORY_HOME_SCREEN
, android.appwidget.AppWidgetProviderInfo#WIDGET_CATEGORY_KEYGUARD
, android.appwidget.AppWidgetProviderInfo#WIDGET_CATEGORY_SEARCHBOX
, and android.appwidget.AppWidgetProviderInfo#WIDGET_CATEGORY_NOT_KEYGUARD
widgetFeatures
var widgetFeatures: Int
Flags indicating various features supported by the widget. These are hints to the widget host, and do not actually change the behavior of the widget.
Value is either 0
or a combination of android.appwidget.AppWidgetProviderInfo#WIDGET_FEATURE_RECONFIGURABLE
, android.appwidget.AppWidgetProviderInfo#WIDGET_FEATURE_HIDE_FROM_PICKER
, and android.appwidget.AppWidgetProviderInfo#WIDGET_FEATURE_CONFIGURATION_OPTIONAL