android.appwidget.AppWidgetManager.getInstalledProviders()方法的使用及代码示例

x33g5p2x  于2022-01-15 转载在 其他  
字(9.9k)|赞(0)|评价(0)|浏览(117)

本文整理了Java中android.appwidget.AppWidgetManager.getInstalledProviders()方法的一些代码示例,展示了AppWidgetManager.getInstalledProviders()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AppWidgetManager.getInstalledProviders()方法的具体详情如下:
包路径:android.appwidget.AppWidgetManager
类名称:AppWidgetManager
方法名:getInstalledProviders

AppWidgetManager.getInstalledProviders介绍

暂无

代码示例

代码示例来源:origin: robolectric/robolectric

@Test
public void getInstalledProviders_returnsWidgetList() throws Exception {
 AppWidgetProviderInfo info1 = new AppWidgetProviderInfo();
 info1.label = "abc";
 AppWidgetProviderInfo info2 = new AppWidgetProviderInfo();
 info2.label = "def";
 shadowAppWidgetManager.addInstalledProvider(info1);
 shadowAppWidgetManager.addInstalledProvider(info2);
 List<AppWidgetProviderInfo> installedProviders = appWidgetManager.getInstalledProviders();
 assertEquals(2, installedProviders.size());
 assertEquals(info1, installedProviders.get(0));
 assertEquals(info2, installedProviders.get(1));
}

代码示例来源:origin: quaap/LaunchTime

public List<AppWidgetProviderInfo> getWidgetsForPackage(String packageName) {
  List<AppWidgetProviderInfo> provs;
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
    UserHandle user = UserHandle.getUserHandleForUid(Process.myUid());
    provs =  mAppWidgetManager.getInstalledProvidersForPackage(packageName, user);
  } else {
    provs = new ArrayList<>();
    for (AppWidgetProviderInfo prov: mAppWidgetManager.getInstalledProviders()) {
      if (prov.provider.getPackageName().equals(packageName)) {
        provs.add(prov);
      }
    }
  }
  return provs;
}

代码示例来源:origin: WeAreFairphone/FP2-Launcher

@Override
public List<AppWidgetProviderInfo> getAllProviders() {
  return mAppWidgetManager.getInstalledProviders();
}

代码示例来源:origin: fookwood/Launcher3

@Override
public List<AppWidgetProviderInfo> getAllProviders() {
  return mAppWidgetManager.getInstalledProviders();
}

代码示例来源:origin: klinker24/Android-Blur-Launcher

@Override
public List<AppWidgetProviderInfo> getAllProviders() {
  return mAppWidgetManager.getInstalledProviders();
}

代码示例来源:origin: klinker24/launcher3

@Override
public List<AppWidgetProviderInfo> getAllProviders() {
  return mAppWidgetManager.getInstalledProviders();
}

代码示例来源:origin: WeAreFairphone/FP2-Launcher

private AppWidgetProviderInfo findAppWidgetProviderInfo(ComponentName component) {
  if (mWidgetMap == null) {
    List<AppWidgetProviderInfo> widgets =
        AppWidgetManager.getInstance(mContext).getInstalledProviders();
    mWidgetMap = new HashMap<ComponentName, AppWidgetProviderInfo>(widgets.size());
    for (AppWidgetProviderInfo info : widgets) {
      mWidgetMap.put(info.provider, info);
    }
  }
  return mWidgetMap.get(component);
}

代码示例来源:origin: klinker24/launcher3

@Override
  public HashMap<ComponentKey, AppWidgetProviderInfo> getAllProvidersMap() {
    HashMap<ComponentKey, AppWidgetProviderInfo> result = new HashMap<>();
    UserHandleCompat user = UserHandleCompat.myUserHandle();
    for (AppWidgetProviderInfo info : mAppWidgetManager.getInstalledProviders()) {
      result.put(new ComponentKey(info.provider, user), info);
    }
    return result;
  }
}

代码示例来源:origin: klinker24/Android-Blur-Launcher

@Override
  public HashMap<ComponentKey, AppWidgetProviderInfo> getAllProvidersMap() {
    HashMap<ComponentKey, AppWidgetProviderInfo> result = new HashMap<>();
    UserHandleCompat user = UserHandleCompat.myUserHandle();
    for (AppWidgetProviderInfo info : mAppWidgetManager.getInstalledProviders()) {
      result.put(new ComponentKey(info.provider, user), info);
    }
    return result;
  }
}

代码示例来源:origin: stackoverflow.com

AppWidgetManager manager = AppWidgetManager.getInstance(this);
int[] a = manager.getAppWidgetIds(new ComponentName("my.pkg", "WidgetProvider"));
List<AppWidgetProviderInfo> b = manager.getInstalledProviders();
for (AppWidgetProviderInfo i : b) {
  if (i.provider.getPackageName().endsWith("pkg")) {
    a = manager.getAppWidgetIds(i.provider);
  }
}
new WidgetProvider().onUpdate(this, manager, a);

代码示例来源:origin: WeAreFairphone/FP2-Launcher

/**
 * Gets an appwidget provider from the given package. If the package contains more than
 * one appwidget provider, an arbitrary one is returned.
 */
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;
}

代码示例来源:origin: klinker24/launcher3

@Override
public LauncherAppWidgetProviderInfo findProvider(
    ComponentName provider, UserHandleCompat user) {
  for (AppWidgetProviderInfo info : mAppWidgetManager.getInstalledProviders()) {
    if (info.provider.equals(provider)) {
      return LauncherAppWidgetProviderInfo.fromProviderInfo(mContext, info);
    }
  }
  return null;
}

代码示例来源:origin: klinker24/Android-Blur-Launcher

@Override
public LauncherAppWidgetProviderInfo findProvider(
    ComponentName provider, UserHandleCompat user) {
  for (AppWidgetProviderInfo info : mAppWidgetManager.getInstalledProviders()) {
    if (info.provider.equals(provider)) {
      return LauncherAppWidgetProviderInfo.fromProviderInfo(mContext, info);
    }
  }
  return null;
}

代码示例来源:origin: WeAreFairphone/FP2-Launcher

/**
 * Attempts to find an AppWidgetProviderInfo that matches the given component.
 */
static AppWidgetProviderInfo findAppWidgetProviderInfoWithComponent(Context context,
    ComponentName component) {
  List<AppWidgetProviderInfo> widgets =
    AppWidgetManager.getInstance(context).getInstalledProviders();
  for (AppWidgetProviderInfo info : widgets) {
    if (info.provider.equals(component)) {
      return info;
    }
  }
  return null;
}

代码示例来源:origin: stackoverflow.com

AppWidgetHost host = m.getWidgetHost();
List<AppWidgetProviderInfo> widgetList = manager.getInstalledProviders();

代码示例来源:origin: stackoverflow.com

final List<AppWidgetProviderInfo> infos = appWidgetManager.getInstalledProviders();

代码示例来源:origin: quaap/LaunchTime

private AppWidgetHostView loadWidget(Activity parent, ComponentName cn) {
  //Log.d(TAG, "Loaded from db: " + cn.getClassName() + " - " + cn.getPackageName());
  // Check that there actually is a widget in the database
  if (cn.getPackageName().isEmpty() && cn.getClassName().isEmpty()) {
    Log.d(TAG, "DB was empty");
    return null;
  }
  final List<AppWidgetProviderInfo> infos = mAppWidgetManager.getInstalledProviders();
  // Get AppWidgetProviderInfo
  AppWidgetProviderInfo appWidgetInfo = null;
  // Iterate through all infos, trying to find the desired one
  for (final AppWidgetProviderInfo info : infos) {
    if (info.provider.equals(cn)) {
      // We found it!
      appWidgetInfo = info;
      break;
    }
  }
  if (appWidgetInfo == null) {
    Log.d(TAG, "app info was null");
    return null; // Stop here
  }
  return loadWidget(parent, appWidgetInfo);
}

代码示例来源:origin: fookwood/Launcher3

/**
 * Returns a widget with category {@link AppWidgetProviderInfo#WIDGET_CATEGORY_SEARCHBOX}
 * provided by the same package which is set to be global search activity.
 * If widgetCategory is not supported, or no such widget is found, returns the first widget
 * provided by the package.
 */
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1)
public static AppWidgetProviderInfo getSearchWidgetProvider(Context context) {
  SearchManager searchManager =
      (SearchManager) context.getSystemService(Context.SEARCH_SERVICE);
  ComponentName searchComponent = searchManager.getGlobalSearchActivity();
  if (searchComponent == null) return null;
  String providerPkg = searchComponent.getPackageName();
  AppWidgetProviderInfo defaultWidgetForSearchPackage = null;
  AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
  for (AppWidgetProviderInfo info : appWidgetManager.getInstalledProviders()) {
    if (info.provider.getPackageName().equals(providerPkg)) {
      if (ATLEAST_JB_MR1) {
        if ((info.widgetCategory & AppWidgetProviderInfo.WIDGET_CATEGORY_SEARCHBOX) != 0) {
          return info;
        } else if (defaultWidgetForSearchPackage == null) {
          defaultWidgetForSearchPackage = info;
        }
      } else {
        return info;
      }
    }
  }
  return defaultWidgetForSearchPackage;
}

代码示例来源:origin: klinker24/launcher3

/**
   * Returns a widget with category {@link AppWidgetProviderInfo#WIDGET_CATEGORY_SEARCHBOX}
   * provided by the same package which is set to be global search activity.
   * If widgetCategory is not supported, or no such widget is found, returns the first widget
   * provided by the package.
   */
  public static AppWidgetProviderInfo getSearchWidgetProvider(Context context) {
    SearchManager searchManager =
        (SearchManager) context.getSystemService(Context.SEARCH_SERVICE);
    ComponentName searchComponent = searchManager.getGlobalSearchActivity();
    if (searchComponent == null) return null;
    String providerPkg = searchComponent.getPackageName();

    AppWidgetProviderInfo defaultWidgetForSearchPackage = null;

    AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
    for (AppWidgetProviderInfo info : appWidgetManager.getInstalledProviders()) {
      if (info.provider.getPackageName().equals(providerPkg) && info.configure == null) {
        if ((info.widgetCategory & AppWidgetProviderInfo.WIDGET_CATEGORY_SEARCHBOX) != 0) {
          return info;
        } else if (defaultWidgetForSearchPackage == null) {
          defaultWidgetForSearchPackage = info;
        }
      }
    }
    return defaultWidgetForSearchPackage;
  }
}

代码示例来源:origin: enricocid/LaunchEnr

/**
   * -     * Returns a widget with category {@link AppWidgetProviderInfo#WIDGET_CATEGORY_SEARCHBOX}
   * -     * provided by the same package which is set to be global search activity.
   * -     * If widgetCategory is not supported, or no such widget is found, returns the first widget
   * -     * provided by the package.
   * -
   */
  public static AppWidgetProviderInfo get(Context context) {
    SearchManager searchManager =
        (SearchManager) context.getSystemService(Context.SEARCH_SERVICE);
    ComponentName searchComponent = searchManager.getGlobalSearchActivity();
    if (searchComponent == null) return null;
    String providerPkg = searchComponent.getPackageName();

    AppWidgetProviderInfo defaultWidgetForSearchPackage = null;

    AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
    for (AppWidgetProviderInfo info : appWidgetManager.getInstalledProviders()) {
      if (info.provider.getPackageName().equals(providerPkg) && info.configure == null) {
        if ((info.widgetCategory & AppWidgetProviderInfo.WIDGET_CATEGORY_SEARCHBOX) != 0) {
          return info;
        } else if (defaultWidgetForSearchPackage == null) {
          defaultWidgetForSearchPackage = info;
        }
      }
    }
    return defaultWidgetForSearchPackage;
  }
}

相关文章