如何从我的应用程序添加一个小部件到Android主屏幕?

我正在编写一个应用程序,当用户指示我的应用程序时,应该可以将小部件(只是文本框)添加到用户手机的主屏幕。 我怎么能做这样的事情?

我知道我可以添加一个应用程序小部件,但如何添加更多?

Solutions Collecting From Web of "如何从我的应用程序添加一个小部件到Android主屏幕?"

从应用程序不可能在主屏幕上放置一个小部件。 只有主屏幕可以将应用程序小部件添加到主屏幕。

类似的链接link1 , link2 , link3

但是你可以提供用户从widgetpicker中挑选小部件。

Intent pickIntent = new Intent(AppWidgetManager.ACTION_APPWIDGET_PICK); pickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetID); startActivityForResult(pickIntent, KEY_CODE); 

这个答案很久以前,但是如果有人绊倒这个问题,我想我应该提供一个最新的答案。

从Android O(API 26)开始,您现在可以将小部件从您的应用程序固定到用户的启动器上!

只需在应用程序的AndroidManifest文件中创build小部件,然后使用AppWidgetManager来请求将小部件固定到启动器。 请注意,由启动程序支持此function,所以在请求固定它之前,您必须调用AppWidgetManager的isRequestPinAppWidgetSupported()方法。

以下是Google的一些文档,详细介绍如下: https : //developer.android.com/preview/features/pinning-shortcuts-widgets.html#widgets

希望这可以帮助!

AFAIK默认启动程序的应用程序不支持这一点。 原因是用户应该把所有东西放在主屏幕上。 允许从应用程序中放置小部件将为应用程序打开“入侵”用户家的“有用”小部件的大门。