Merge "metaData should be null without GET_META_DATA flag"
This commit is contained in:
@@ -419,7 +419,7 @@ public class PackageInfoWithoutStateUtils {
|
||||
return null;
|
||||
}
|
||||
|
||||
return generateActivityInfoUnchecked(a, applicationInfo);
|
||||
return generateActivityInfoUnchecked(a, flags, applicationInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -431,6 +431,7 @@ public class PackageInfoWithoutStateUtils {
|
||||
*/
|
||||
@NonNull
|
||||
public static ActivityInfo generateActivityInfoUnchecked(@NonNull ParsedActivity a,
|
||||
@PackageManager.ComponentInfoFlags int flags,
|
||||
@NonNull ApplicationInfo applicationInfo) {
|
||||
// Make shallow copies so we can store the metadata safely
|
||||
ActivityInfo ai = new ActivityInfo();
|
||||
@@ -463,7 +464,9 @@ public class PackageInfoWithoutStateUtils {
|
||||
ai.rotationAnimation = a.getRotationAnimation();
|
||||
ai.colorMode = a.getColorMode();
|
||||
ai.windowLayout = a.getWindowLayout();
|
||||
ai.metaData = a.getMetaData();
|
||||
if ((flags & PackageManager.GET_META_DATA) != 0) {
|
||||
ai.metaData = a.getMetaData();
|
||||
}
|
||||
ai.applicationInfo = applicationInfo;
|
||||
return ai;
|
||||
}
|
||||
@@ -489,7 +492,7 @@ public class PackageInfoWithoutStateUtils {
|
||||
return null;
|
||||
}
|
||||
|
||||
return generateServiceInfoUnchecked(s, applicationInfo);
|
||||
return generateServiceInfoUnchecked(s, flags, applicationInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -501,17 +504,20 @@ public class PackageInfoWithoutStateUtils {
|
||||
*/
|
||||
@NonNull
|
||||
public static ServiceInfo generateServiceInfoUnchecked(@NonNull ParsedService s,
|
||||
@PackageManager.ComponentInfoFlags int flags,
|
||||
@NonNull ApplicationInfo applicationInfo) {
|
||||
// Make shallow copies so we can store the metadata safely
|
||||
ServiceInfo si = new ServiceInfo();
|
||||
assignSharedFieldsForComponentInfo(si, s);
|
||||
si.exported = s.isExported();
|
||||
si.flags = s.getFlags();
|
||||
si.metaData = s.getMetaData();
|
||||
si.permission = s.getPermission();
|
||||
si.processName = s.getProcessName();
|
||||
si.mForegroundServiceType = s.getForegroundServiceType();
|
||||
si.applicationInfo = applicationInfo;
|
||||
if ((flags & PackageManager.GET_META_DATA) != 0) {
|
||||
si.metaData = s.getMetaData();
|
||||
}
|
||||
return si;
|
||||
}
|
||||
|
||||
@@ -566,10 +572,12 @@ public class PackageInfoWithoutStateUtils {
|
||||
pi.initOrder = p.getInitOrder();
|
||||
pi.uriPermissionPatterns = p.getUriPermissionPatterns();
|
||||
pi.pathPermissions = p.getPathPermissions();
|
||||
pi.metaData = p.getMetaData();
|
||||
if ((flags & PackageManager.GET_URI_PERMISSION_PATTERNS) == 0) {
|
||||
pi.uriPermissionPatterns = null;
|
||||
}
|
||||
if ((flags & PackageManager.GET_META_DATA) != 0) {
|
||||
pi.metaData = p.getMetaData();
|
||||
}
|
||||
pi.applicationInfo = applicationInfo;
|
||||
return pi;
|
||||
}
|
||||
|
||||
@@ -275,8 +275,8 @@ public class PackageInfoUtils {
|
||||
return null;
|
||||
}
|
||||
|
||||
ActivityInfo info =
|
||||
PackageInfoWithoutStateUtils.generateActivityInfoUnchecked(a, applicationInfo);
|
||||
final ActivityInfo info = PackageInfoWithoutStateUtils.generateActivityInfoUnchecked(
|
||||
a, flags, applicationInfo);
|
||||
assignSharedFieldsForComponentInfo(info, a, pkgSetting, userId);
|
||||
return info;
|
||||
}
|
||||
@@ -310,8 +310,8 @@ public class PackageInfoUtils {
|
||||
return null;
|
||||
}
|
||||
|
||||
ServiceInfo info =
|
||||
PackageInfoWithoutStateUtils.generateServiceInfoUnchecked(s, applicationInfo);
|
||||
final ServiceInfo info = PackageInfoWithoutStateUtils.generateServiceInfoUnchecked(
|
||||
s, flags, applicationInfo);
|
||||
assignSharedFieldsForComponentInfo(info, s, pkgSetting, userId);
|
||||
return info;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user