当前位置: 首页>>代码示例>>Java>>正文


Java PackageParser.ProviderIntentInfo方法代码示例

本文整理汇总了Java中android.content.pm.PackageParser.ProviderIntentInfo方法的典型用法代码示例。如果您正苦于以下问题:Java PackageParser.ProviderIntentInfo方法的具体用法?Java PackageParser.ProviderIntentInfo怎么用?Java PackageParser.ProviderIntentInfo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在android.content.pm.PackageParser的用法示例。


在下文中一共展示了PackageParser.ProviderIntentInfo方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: queryIntentForPackage

import android.content.pm.PackageParser; //导入方法依赖的package包/类
public List<ResolveInfo> queryIntentForPackage(Intent intent, String resolvedType, int flags,
		ArrayList<PackageParser.Provider> packageProviders) {
	if (packageProviders == null) {
		return null;
	}
	mFlags = flags;
	final boolean defaultOnly = (flags & PackageManager.MATCH_DEFAULT_ONLY) != 0;
	final int N = packageProviders.size();
	ArrayList<PackageParser.ProviderIntentInfo[]> listCut = new ArrayList<>(N);

	ArrayList<PackageParser.ProviderIntentInfo> intentFilters;
	for (int i = 0; i < N; ++i) {
		intentFilters = packageProviders.get(i).intents;
		if (intentFilters != null && intentFilters.size() > 0) {
			PackageParser.ProviderIntentInfo[] array = new PackageParser.ProviderIntentInfo[intentFilters
					.size()];
			intentFilters.toArray(array);
			listCut.add(array);
		}
	}
	return super.queryIntentFromList(intent, resolvedType, defaultOnly, listCut);
}
 
开发者ID:codehz,项目名称:container,代码行数:23,代码来源:ProviderIntentResolver.java

示例2: newResult

import android.content.pm.PackageParser; //导入方法依赖的package包/类
@TargetApi(Build.VERSION_CODES.KITKAT)
@Override
protected ResolveInfo newResult(PackageParser.ProviderIntentInfo filter, int match) {
	final PackageParser.Provider provider = filter.provider;
	ProviderInfo pi = PackageParserCompat.generateProviderInfo(provider, mFlags);
	if (pi == null) {
		return null;
	}
	final ResolveInfo res = new ResolveInfo();
	res.providerInfo = pi;
	if ((mFlags & PackageManager.GET_RESOLVED_FILTER) != 0) {
		res.filter = filter;
	}
	res.priority = filter.getPriority();
	res.preferredOrder = provider.owner.mPreferredOrder;
	res.match = match;
	res.isDefault = filter.hasDefault;
	res.labelRes = filter.labelRes;
	res.nonLocalizedLabel = filter.nonLocalizedLabel;
	res.icon = filter.icon;
	return res;
}
 
开发者ID:codehz,项目名称:container,代码行数:23,代码来源:ProviderIntentResolver.java

示例3: addProvider

import android.content.pm.PackageParser; //导入方法依赖的package包/类
public final void addProvider(PackageParser.Provider p) {
	if (mProviders.containsKey(p.getComponentName())) {
		VLog.w(TAG, "Provider " + p.getComponentName() + " already defined; ignoring");
		return;
	}

	mProviders.put(p.getComponentName(), p);
	final int NI = p.intents.size();
	int j;
	for (j = 0; j < NI; j++) {
		PackageParser.ProviderIntentInfo intent = p.intents.get(j);
		addFilter(intent);
	}
}
 
开发者ID:codehz,项目名称:container,代码行数:15,代码来源:ProviderIntentResolver.java

示例4: removeProvider

import android.content.pm.PackageParser; //导入方法依赖的package包/类
public final void removeProvider(PackageParser.Provider p) {
	mProviders.remove(p.getComponentName());
	final int NI = p.intents.size();
	int j;
	for (j = 0; j < NI; j++) {
		PackageParser.ProviderIntentInfo intent = p.intents.get(j);
		removeFilter(intent);
	}
}
 
开发者ID:codehz,项目名称:container,代码行数:10,代码来源:ProviderIntentResolver.java

示例5: allowFilterResult

import android.content.pm.PackageParser; //导入方法依赖的package包/类
@TargetApi(Build.VERSION_CODES.KITKAT)
@Override
protected boolean allowFilterResult(PackageParser.ProviderIntentInfo filter, List<ResolveInfo> dest) {
	ProviderInfo filterPi = filter.provider.info;
	for (int i = dest.size() - 1; i >= 0; i--) {
		ProviderInfo destPi = dest.get(i).providerInfo;
		if (ObjectsCompat.equals(destPi.name, filterPi.name)
				&& ObjectsCompat.equals(destPi.packageName, filterPi.packageName)) {
			return false;
		}
	}
	return true;
}
 
开发者ID:codehz,项目名称:container,代码行数:14,代码来源:ProviderIntentResolver.java

示例6: newArray

import android.content.pm.PackageParser; //导入方法依赖的package包/类
@Override
protected PackageParser.ProviderIntentInfo[] newArray(int size) {
	return new PackageParser.ProviderIntentInfo[size];
}
 
开发者ID:codehz,项目名称:container,代码行数:5,代码来源:ProviderIntentResolver.java

示例7: isFilterStopped

import android.content.pm.PackageParser; //导入方法依赖的package包/类
@Override
protected boolean isFilterStopped(PackageParser.ProviderIntentInfo filter) {
	return false;
}
 
开发者ID:codehz,项目名称:container,代码行数:5,代码来源:ProviderIntentResolver.java

示例8: isPackageForFilter

import android.content.pm.PackageParser; //导入方法依赖的package包/类
@Override
protected boolean isPackageForFilter(String packageName, PackageParser.ProviderIntentInfo info) {
	return packageName.equals(info.provider.owner.packageName);
}
 
开发者ID:codehz,项目名称:container,代码行数:5,代码来源:ProviderIntentResolver.java

示例9: filterToLabel

import android.content.pm.PackageParser; //导入方法依赖的package包/类
@Override
protected Object filterToLabel(PackageParser.ProviderIntentInfo filter) {
	return filter.provider;
}
 
开发者ID:codehz,项目名称:container,代码行数:5,代码来源:ProviderIntentResolver.java

示例10: dumpFilter

import android.content.pm.PackageParser; //导入方法依赖的package包/类
@Override
protected void dumpFilter(PrintWriter out, String prefix, PackageParser.ProviderIntentInfo filter) {

}
 
开发者ID:codehz,项目名称:container,代码行数:5,代码来源:ProviderIntentResolver.java


注:本文中的android.content.pm.PackageParser.ProviderIntentInfo方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。