@Override public VPackage createFromParcel(Parcel source) { return new VPackage(source); }
@Override public IntentInfo createFromParcel(Parcel source) { return new IntentInfo(source); }
public ActivityComponent(PackageParser.Activity activity) { super(activity); if (activity.intents != null) { this.intents = new ArrayList<>(activity.intents.size()); for (Object o : activity.intents) { intents.add(new ActivityIntentInfo((PackageParser.IntentInfo) o)); } } info = activity.info; }
public static ServiceInfo generateServiceInfo(VPackage.ServiceComponent s, int flags, PackageUserState state, int userId) { if (s == null) return null; if (!checkUseInstalledOrHidden(state, flags)) { return null; } ServiceInfo si = new ServiceInfo(s.info); // Make shallow copies so we can store the metadata safely if ((flags & PackageManager.GET_META_DATA) != 0 && s.metaData != null) { si.metaData = s.metaData; } si.applicationInfo = generateApplicationInfo(s.owner, flags, state, userId); return si; }
public static ApplicationInfo generateApplicationInfo(VPackage p, int flags, PackageUserState state, int userId) { if (p == null) return null; if (!checkUseInstalledOrHidden(state, flags)) { return null; } // Make shallow copy so we can store the metadata/libraries safely ApplicationInfo ai = new ApplicationInfo(p.applicationInfo); if ((flags & PackageManager.GET_META_DATA) != 0) { ai.metaData = p.mAppMetaData; } initApplicationAsUser(ai, userId); return ai; }
public ServiceComponent(PackageParser.Service service) { super(service); if (service.intents != null) { this.intents = new ArrayList<>(service.intents.size()); for (Object o : service.intents) { intents.add(new ServiceIntentInfo((PackageParser.IntentInfo) o)); } } this.info = service.info; }
public final void addService(VPackage.ServiceComponent s) { mServices.put(s.getComponentName(), s); final int NI = s.intents.size(); int j; for (j = 0; j < NI; j++) { VPackage.ServiceIntentInfo intent = s.intents.get(j); addFilter(intent); } }
public ProviderComponent(PackageParser.Provider provider) { super(provider); if (provider.intents != null) { this.intents = new ArrayList<>(provider.intents.size()); for (Object o : provider.intents) { intents.add(new ProviderIntentInfo((PackageParser.IntentInfo) o)); } } this.info = provider.info; }
public final void removeActivity(VPackage.ActivityComponent a, String type) { mActivities.remove(a.getComponentName()); final int NI = a.intents.size(); for (int j = 0; j < NI; j++) { VPackage.ActivityIntentInfo intent = a.intents.get(j); removeFilter(intent); } }
public final void removeProvider(VPackage.ProviderComponent p) { mProviders.remove(p.getComponentName()); final int NI = p.intents.size(); int j; for (j = 0; j < NI; j++) { VPackage.ProviderIntentInfo intent = p.intents.get(j); removeFilter(intent); } }
private PackageInfo generatePackageInfo(VPackage p, PackageSetting ps, int flags, int userId) { flags = updateFlagsNought(flags); PackageInfo packageInfo = PackageParserEx.generatePackageInfo(p, flags, ps.firstInstallTime, ps.lastUpdateTime, ps.readUserState(userId), userId); if (packageInfo != null) { return packageInfo; } return null; }
public static void put(VPackage pkg, PackageSetting ps) { synchronized (PackageCacheManager.class) { PackageParserEx.initApplicationInfoBase(ps, pkg); PACKAGE_CACHE.put(pkg.packageName, pkg); pkg.mExtras = ps; VPackageManagerService.get().analyzePackageLocked(pkg); } }
public static ActivityInfo generateActivityInfo(VPackage.ActivityComponent a, int flags, PackageUserState state, int userId) { if (a == null) return null; if (!checkUseInstalledOrHidden(state, flags)) { return null; } // Make shallow copies so we can store the metadata safely ActivityInfo ai = new ActivityInfo(a.info); if ((flags & PackageManager.GET_META_DATA) != 0 && (a.metaData != null)) { ai.metaData = a.metaData; } ai.applicationInfo = generateApplicationInfo(a.owner, flags, state, userId); return ai; }
protected PermissionComponent(Parcel src) { info = src.readParcelable(ActivityInfo.class.getClassLoader()); className = src.readString(); metaData = src.readBundle(Bundle.class.getClassLoader()); int N = src.readInt(); intents = new ArrayList<>(N); while (N-- > 0) { intents.add(new IntentInfo(src)); } } }
protected ActivityComponent(Parcel src) { info = src.readParcelable(ActivityInfo.class.getClassLoader()); className = src.readString(); metaData = src.readBundle(Bundle.class.getClassLoader()); int N = src.readInt(); intents = new ArrayList<>(N); while (N-- > 0) { intents.add(new ActivityIntentInfo(src)); } } }
protected ServiceComponent(Parcel src) { info = src.readParcelable(ActivityInfo.class.getClassLoader()); className = src.readString(); metaData = src.readBundle(Bundle.class.getClassLoader()); int N = src.readInt(); intents = new ArrayList<>(N); while (N-- > 0) { intents.add(new ServiceIntentInfo(src)); } } }
public final void removeService(VPackage.ServiceComponent s) { mServices.remove(s.getComponentName()); final int NI = s.intents.size(); int j; for (j = 0; j < NI; j++) { VPackage.ServiceIntentInfo intent = s.intents.get(j); removeFilter(intent); } }
public static ProviderInfo generateProviderInfo(VPackage.ProviderComponent p, int flags, PackageUserState state, int userId) { if (p == null) return null; if (!checkUseInstalledOrHidden(state, flags)) { return null; } // Make shallow copies so we can store the metadata safely ProviderInfo pi = new ProviderInfo(p.info); if ((flags & PackageManager.GET_META_DATA) != 0 && (p.metaData != null)) { pi.metaData = p.metaData; } if ((flags & PackageManager.GET_URI_PERMISSION_PATTERNS) == 0) { pi.uriPermissionPatterns = null; } pi.applicationInfo = generateApplicationInfo(p.owner, flags, state, userId); return pi; }
protected InstrumentationComponent(Parcel src) { info = src.readParcelable(ActivityInfo.class.getClassLoader()); className = src.readString(); metaData = src.readBundle(Bundle.class.getClassLoader()); int N = src.readInt(); intents = new ArrayList<>(N); while (N-- > 0) { intents.add(new IntentInfo(src)); } } }
protected PermissionGroupComponent(Parcel src) { info = src.readParcelable(ActivityInfo.class.getClassLoader()); className = src.readString(); metaData = src.readBundle(Bundle.class.getClassLoader()); int N = src.readInt(); intents = new ArrayList<>(N); while (N-- > 0) { intents.add(new IntentInfo(src)); } } }