`
收藏列表
标题 标签 来源
getWidgetID(ComponentName cn) android
	/**
	 * 添加Widget,返回ID
	 * @param cn
	 * @return
	 */
	private int getWidgetID(ComponentName cn) {
		boolean allocatedAppWidgets = false;
		final AppWidgetManager appWidgetManager = AppWidgetManager
				.getInstance(this);
		int appWidgetId = -1;
		try {
			appWidgetId = mAppWidgetHost.allocateAppWidgetId();

			allocatedAppWidgets = true;

			appWidgetManager.bindAppWidgetId(appWidgetId, cn);
		} catch (RuntimeException ex) {
			Log.e(TAG, "Problem allocating appWidgetId", ex);
		}

		return appWidgetId;
	}
getWidgetFromClassName(String className) android
    /**
     * 根据类名得到Widget的ComponentName
     * @param packageName
     * @return
     */
    private ComponentName getWidgetFromClassName(String className) {
    	
        final Intent reciverIntent = new Intent(ACTION_FILTER_WIDGET, null);
        
        final PackageManager manager = this.getPackageManager();
        final List<ResolveInfo> apps = manager.queryBroadcastReceivers(reciverIntent, 0);
    	
        ActivityInfo info = null;
        if (apps == null) return null;
        final int appsCount = apps.size();
        for (int i = 0; i < appsCount; i++) {
        	info = apps.get(i).activityInfo;

            if (info.name.equals(className)) {
            	ComponentName component = new ComponentName(info.packageName,info.name);
            	if(component!=null){
            		return component;
            	}
            }
        }
        return null;
    }
getWidgetFromClassName android
    /**
     * 根据类名得到Widget的ComponentName
     * @param packageName
     * @return
     */
    private ComponentName getWidgetFromClassName(String className) {
    	
        final Intent reciverIntent = new Intent(ACTION_FILTER_WIDGET, null);
        
        final PackageManager manager = this.getPackageManager();
        final List<ResolveInfo> apps = manager.queryBroadcastReceivers(reciverIntent, 0);
    	
        ActivityInfo info = null;
        if (apps == null) return null;
        final int appsCount = apps.size();
        for (int i = 0; i < appsCount; i++) {
        	info = apps.get(i).activityInfo;

            if (info.name.equals(className)) {
            	ComponentName component = new ComponentName(info.packageName,info.name);
            	if(component!=null){
            		return component;
            	}
            }
        }
        return null;
    }
Global site tag (gtag.js) - Google Analytics