我正在尝试阅读Android上可用的主屏幕小部件列表。 我可以使用
使用可用的应用程序列表填充网格Intent myIntent = new Intent(Intent.ACTION_MAIN, null);
myIntent.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> appsInfo = MyActivity.getPackageManager().queryIntentActivities(myIntent, 0);
然后迭代每个ResolveInfo 如何使用可用的主屏幕小部件进行相同的操作?我想用一个列表显示相同的列表,不断触摸屏幕并从显示的弹出窗口中选择“小部件”。
答案 0 :(得分:12)
正如CommonsWare所建议的,这是用于提取小部件列表的工作代码
AppWidgetManager manager = AppWidgetManager.getInstance(this);
List<AppWidgetProviderInfo> infoList = manager.getInstalledProviders();
for (AppWidgetProviderInfo info : infoList) {
Log.d(TAG, "Name: " + info.label);
Log.d(TAG, "Provider Name: " + info.provider);
Log.d(TAG, "Configure Name: " + info.configure);
}
可以提取各种其他值,有关更多参考,请参阅AppWidgetProviderInfo
答案 1 :(得分:8)
在getInstalledProviders()
上致电AppWidgetManager
。