我想将默认搜索应用小部件添加到我的应用内的视图中。就像主屏幕一样,但没有任何拖动,我只希望工作区是 4x1 大。
我怎样才能做到这一点?我已经查看了启动器的来源,但它有很多需要理解和删除,因为我希望它尽可能简单......
我知道我可以像这样获取小部件的组件名称:
private ComponentName getSearchWidgetProvider() {
SearchManager searchManager = (SearchManager) mContext.getSystemService(Context.SEARCH_SERVICE);
ComponentName searchComponent = null;
searchManager.getSearchableInfo(searchComponent);
if (searchComponent == null) return null;
return getProviderInPackage(searchComponent.getPackageName());
}
private ComponentName getProviderInPackage(String packageName) {
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(mContext);
List<AppWidgetProviderInfo> providers = appWidgetManager.getInstalledProviders();
if (providers == null) return null;
final int providerCount = providers.size();
for (int i = 0; i < providerCount; i++) {
ComponentName provider = providers.get(i).provider;
if (provider != null && provider.getPackageName().equals(packageName)) {
return provider;
}
}
return null;
}
那么我怎样才能以最简单的方式将它添加到视图中(让我们说一个线性视图)......
谢谢!