info.metaData = metaDataToBundle(cpdata[i].getMetaData().getValueMap()); packageInfo.providers[i] = info; applicationInfo.processName = androidManifest.getProcessName(); applicationInfo.name = androidManifest.getApplicationName(); applicationInfo.metaData = metaDataToBundle(androidManifest.getApplicationMetaData()); setUpPackageStorage(applicationInfo);
static PermissionInfo createPermissionInfo(int flags, PermissionItemData permissionItemData) throws NameNotFoundException { PermissionInfo permissionInfo = new PermissionInfo(); String packageName = RuntimeEnvironment.getAppManifest().getPackageName(); permissionInfo.packageName = packageName; permissionInfo.name = permissionItemData.getName(); permissionInfo.group = permissionItemData.getPermissionGroup(); permissionInfo.protectionLevel = decodeProtectionLevel(permissionItemData.getProtectionLevel()); String descriptionRef = permissionItemData.getDescription(); if (descriptionRef != null) { ResName descResName = AttributeResource .getResourceReference(descriptionRef, packageName, "string"); permissionInfo.descriptionRes = RuntimeEnvironment.getAppResourceTable().getResourceId(descResName); } String labelRefOrString = permissionItemData.getLabel(); if (labelRefOrString != null) { if (AttributeResource.isResourceReference(labelRefOrString)) { ResName labelResName = AttributeResource.getResourceReference(labelRefOrString, packageName, "string"); permissionInfo.labelRes = RuntimeEnvironment.getAppResourceTable().getResourceId(labelResName); } else { permissionInfo.nonLocalizedLabel = labelRefOrString; } } if ((flags & GET_META_DATA) != 0) { permissionInfo.metaData = metaDataToBundle(permissionItemData.getMetaData().getValueMap()); } return permissionInfo; }