boolean shouldAllowProvider(final @Nullable ProviderInfo provider) {
		if (provider == null) return true;		// We know nothing about the provider, better allow than block.
		if (mBase.getPackageName().equals(provider.packageName)) return true;
		if (shouldBlockRequestTarget(OutboundType.CONTENT, null, provider.packageName)) return false;
		if (Settings.AUTHORITY.equals(provider.authority)) return true;	// Always allow access to system settings, to avoid rare cases in the wild that the provider info of Settings provider is inaccurate.
		//noinspection SimplifiableIfStatement
		if (SDK_INT >= HONEYCOMB_MR1 && mExcludeStoppedPackages
				&& (provider.applicationInfo.flags & (FLAG_SYSTEM | ApplicationInfo.FLAG_STOPPED)) == ApplicationInfo.FLAG_STOPPED) return mDryRun;
		return true;
	}
The shared functionality for condom wrappers.

Created by Oasis on 2017/4/21.
library/src/main/java/com/oasisfeng/condom/CondomCore.java